앞으로    목차    1    2    3    4    5    6    제7장    8    다음으로

7. 비-유닉스 플랫폼에서 파이썬 사용하기

7.1. 맥용 파이썬 버전이 있나요?

네, 잭 약센(Jack Jansen)이 관리하고 있습니다. 잭의 맥파이썬 페이지를 보세요:

  http://www.cwi.nl/~jack/macpython.html


7.2. 도스와 윈도우용 파이썬 버전이 있나요?

네. 핵심 윈도우 이진 파일은 http://www.python.org/windows/으로부터 구할 수 있습니다. 넘치도록 많은 윈도우 확장들을 사용할 수 있는데, 항상-호환적이지는-않은 많은 수의 구이 (GUI) 도구들도 포함됩니다. 핵심 이진 파일은 표준 Tkinter 구이 확장을 포함하고 있습니다.

대부분의 윈도우 확장은 http://www.python.org/windows/에서 발견할 수 있습니다 (혹은 참조할 수 있습니다)

윈도우 3.1/도스의 지원은 근래에는 포기된 느낌입니다. 이러한 플랫폼에서 파이썬의 구형버전을 위해서는 설정작업이 필요할 겁니다. 그러한 이식작업은 WPY 입니다.

WPY란: 도스, 윈도우 3.1(1), 윈도우 95, 윈도우 NT 그리고 OS/2에 대한 이식작업니다. 또한 포함된 구이패키지(GUI package)는 윈도우(도스가 아님) 와 유닉스 사이의 이식성을 제공하고 있으며, 양자 모두에서 고유의 시각적 느낌을 제공합니다. ftp://ftp.python.org/pub/python/wpy/.


7.3. OS/2용 파이썬 버전이 있나요?

네, http://www.python.org/download/download_os2.html를 보세요.


7.4. VMS용 파이썬 버전이 있나요?

네, 파이썬 1.4가 OpenVMS에 이식되었으며 1.2중 약간이 VMS에 이식되었습니다. ftp://ftp.python.org/pub/python/contrib/Porting/vms/를 참조하세요.

우웨제신(Uwe Zessin)은 파이썬 1.5.x를 OpenVMS에 이식하고 있습니다. http://decus.decus.de/~zessin/를 보세요.


7.5. IBM 메인프레임은 어떤가요, 또는 다른 비-유닉스 플랫폼은 어떤가요?

이러한 것들에 관하여 들어보지 못하였습니다, 제가 기억하는 것이라면 OS/9 와 Vxworks에 대한 이식작업뿐입니다 (둘다 내장형 시스템을 위한 운영체제이지요). 이것에 관심이 있으시다면, 바로 뉴스그룹으로 가셔서 거기에서 물어보세요, 아마도 원하시는 정확한 대답을 들으실수 있겠지요. 예를 들면, HP3000 컴퓨터의 MPE/iX 5.0에 대한 이식작업이 선언되었습니다, http://www.allegro.com/software/를 참조하세요.


7.6. 비-유닉스 버전들을 위한 소스 혹은 Makefile은 어디에 있습니까?

표준 소스가(거의) 모두 사용 가능합니다. 부가적인 소스들은 플랫폼에 종속적인, 그 배포본의 하부디렉토리에서 발견하실 수 있습니다.


7.7. 비-유닉스 버전을 위한 지위와 지원은 무엇입니까?

대부분의 이러한 플랫폼에 접해 보지는 않습니다, 그래서 일반적으로 자원자들이 제출해준 자료들에 의존합니다. 그렇지만 파이썬을 특정한 플랫폼에서 표준 소스로 컴파일 하도록 하는데 필요한 모든 변화를 통합하려고 노력합니다, 그래서 더 쉽게 다양한 비-유닉스 플랫폼에 다음 버전을 이식하게 될 것입니다.


7.8. 나는 PC 버전을 가지고 있습니다 그러나 겨우 이진파일 하나인 것 같습니다. 라이브러리는 어디 있습니까?

위도우용 버전을 실행하려고 하신다면, 잘못된 배포본을 가지고 계십니다. FAQ에는 현재의 윈도우 버전이 나열되어 있습니다. 특히, 파이썬윈과 wpy는 완벽한 기능의 설치를 제공합니다.

그렇지만 여러분의 시스템에서 작동할 것이라고 희망하고 있는 유일한 배포본을 가지고 있다고 확신한다면, 그러면...

여전히 여러분은 배포본 디렉토리 "python/Lib" 에 있는 파일들을 여러분의 시스템에 복사할 필요가 있습니다. 완전한 패포본을 가지고 있지 않으시다면, 파일 lib<version>.tar.gz를 얻을수 있는데 대부분의 ftp 사이트는 Python을 가지고 있습니다; 이것은 그 배포본의 하부모음으로서 그러한 파일들만을 담고 있습니다, 예를 들어. ftp://ftp.python.org/pub/python/src/lib1.4.tar.gz.

그 라이브러리를 인스톨하고 나면, 거기에다 sys.path를 지정해줄 필요가 있습니다. 라이브러리가 C:\misc\python\lib에 있다고 가정한다면, 다음의 명령어들은 파이썬 인터프리터에게 그 경로를 가르쳐 줍니다 (이중 역사선에 주의하세요 -- 여러분은 대신에 한개의 사선을 사용할 수도 있습니다):

        >>> import sys
        >>> sys.path.insert(0, 'C:\\misc\\python\\lib')
        >>>
더욱 영구적인 효과를 원하신다면, 환경 변수 PYTHONPATH를, 다음과 같이 (도스 프롬프트에서) 설정하세요:

        C> SET PYTHONPATH=C:\misc\python\lib


7.9. 맥이나 PC버전을 위한 문서는 어디에 있나요?

유닉스 버전을 위한 문서가 맥이나 PC 버전에도 적용됩니다. 어디에 적용되고 차이점이 무엇인지는 그 문서에 지시되어 있습니다.


7.10. 어떻게 파이썬 프로그램을 맥이나 PC에서 만드나요?

외부 에티터를 사용하세요. 맥에서는, BBEdit가 인기있는 말끔한 텍스트 에디터인거 같습니다. 저는 이런식으로 작업합니다: 인터프리터를 시동합니다; 모듈 파일을 BBedit을 사용하여 작성합니다; 그것을 인터프리터에서 수입하고 테스트합니다; 다시 BBedit에서 편집합니다; 그리고는 내장 함수 reload()를 사용하여 수입된 모듈을 재-적재합니다; 등등. 1.4 배포본에서는 BBEdit 확장이 있어서 삶을 더 편하게 해줍니다: 그 확장은 인터프리터에게 현재 윈도우를 실행하도록 명령할 수 있습니다. 다음을 참조하세요 :Mac:Tools:BBPy:README.

PC에 관한 같은 질문에 관해서는, Kurt Wm. Hemr 씨가 다음과 같이 썼습니다: "살아있기만 하다면 누구라도 분명히 MS-Windows에서 똑 같이 사용하는 법을 알겠지만, 나는 윈도우를 위한 이맥스 복제버전을 사용하시기를 추천하겠습니다. 변경을 한 후에 파이썬으로부터 쉽게 재저장할수 있고 "reload()"할 수 있습니다, 뿐만 아나라 WinNot은 자동적으로 여러분이 선택한 텍스트를 클립보드로 복사하므로, WinNot에서 변경한 전체 프로시저(함수)를 간단하게 선택하여 QWPython으로 전환하고, 그리고 shift-ins를 눌러서 그 변경된 프로그램 단위로 다시 들어갈 수 있습니다."

Windows95나 Windows NT를 사용하신다면, 파이썬윈에 관하여 아셔야 합니다, 그것은 구이 프레임워크를 제공하는데, 마우스-구동의 에디터, 객체 열람기, 그리고 GUI-기반 디버거를 가지고 있습니다. 자세한 것은 다음을 참조하세요.

       http://www.python.org/ftp/python/pythonwin/


7.11. Windows 95/NT에서 어떻게 Tkinter를 사용하나요?

1.5에서 시작되었으며, 대단히 쉽습니다 -- Python과 Tcl/Tk를 그냥 내려 받아서 설치하시면 쓰실 수 있습니다.

  http://www.python.org/download/download_windows.html를 참조하세요
주의 하나: Tkinter를 PythonWin(마크해몬드(Mark Hammond)의 IDE)에서 사용하려고 하지 마세요 . 명령어 라인 인터페이스에서 사용하시던가 (python.exe) 또는 윈도우 없는 인터프리터 (pythonw.exe)에서 사용하세요.


7.12. cgi.py (또는 다른 CGI 프로그래밍)이 어떤때는 NT 또는 win95에서 작동하지 않습니다!

최신 버전을 가지고 있는지 확인하세요, 파이썬의 구이 버전보다는 python.exe를 사용하고 있는지 그리고 서버를 설정하여 다음과 같이 실행하도록 설정되었는지를 확인하세요.

"...\python.exe -u ..."
cgi 실행을 위해서라면. -u (unbuffered) 선택사항때문에 NT와 win95에서 인터프리터가 표준입력과 출력에서 newlines를 변경하지 못합니다. 그것이 없다면 post/multipart 요구는 잘못된 길이를 가진 듯이 보일 것입니다, 그리고 이진파일들(예, GIF)의 반응은 왜곡될지도 모릅니다 (즉, "깨진 이미지(broken image)"로 결론납니다).


7.13. NT의 파이썬윈에서 왜 os.popen()이 작동하지 않나요?

파이썬 윈에서 os.popen()이 작동하지 않는 이유는 마이크로 소프트의 C 실행시간 라이브러리 (CRT)의 버그 때문입니다. CRT는 여러분이 Win32 콘솔이 프로세스에 달려있다고 가정합니다.

대신에 win32pipe 모듈의 popen()을 사용하여야만 하는데 부착된 Win32 콘솔을 가지는가에 의존하지 않습니다.

예를 들어:

 import win32pipe
 f = win32pipe.popen('dir /c c:\\')
 print f.readlines()
 f.close()


7.14. 같은 프로그램으로 다른 플랫폼에서 다른 기능들을 어떻게 사용하나요?

파이썬은 엄청나게 동적임을 기억하세요 그리고 이 동적성격을 사용해서 여러분은 프로그램을 실행시에 서로 다른 플랫폼에서 가능한 기능들을 사용할 수 있도록 구성할 수 있습니다. 예를 들어 여러분은 sys.platform을 테스트해보고 그 값에 근거하여 서로 다른 모듈을 수입할 수 있습니다.

   import sys
   if sys.platform == "win32":
      import win32pipe
      popen = win32pipe.popen
   else:
      import os
      popen = os.popen
(여러분이 이러한 것을 하기를 원하는 이유에 대한 설명을 보려면 FAQ 7.13을 참조하세요.) 또한 모듈을 수입할수도 있고 만약 수입이 실패하면 fallback을 사용할 수 있습니다:

    try:
         import really_fast_implementation
         choice = really_fast_implementation
    except ImportError:
         import slower_implementation
         choice = slower_implementation


7.15. 아미가용 파이썬 버전이 있나요?

예. 아미가 파이썬 홈페이지 http://www.bigfoot.com/~irmen/python.html를 참조하십시오.


7.16. 왜 os.popen()/win32pipe.popen()이 Win9x에서 작동하지 않나요?

Win9x에는 버그가 있어서 os.popen/win32pipe.popen*이 작동하는 것을 막습니다. 좋은 소식은 이 문제를 해결할 방법이 있습니다. 마이크로소프트 지식창고에서 참조하실 필요가 있는데: Q150956입니다. 여러분은 그 지식창고에 접근할 연결점을: http://www.microsoft.com/kb에서 찾을 수 있습니다.


앞으로    목차    1    2    3    4    5    6    제7장    8    다음으로