문제

Linux에서 작업하기 위해 만든 Pygtk, Pygobject 및 Pycairo에 의존하는 응용 프로그램이 있습니다. Windows로 포팅하고 싶지만 실행할 때 import gobject 나는 이것을 얻는다 :

Traceback (most recent call last):
    import gobject
  File "C:\Python26\lib\site-packages\gtk-2.0\gobject\__init__.py", line 30, in <module>
    from gobject.constants import *
  File "C:\Python26\lib\site-packages\gtk-2.0\gobject\constants.py", line 22, in <module>
    from _gobject import type_from_name
ImportError: DLL load failed: The specified procedure could not be found.

이것은 Mingw를 사용하여 빌딩에서 Microsoft Visual Studio로의 스위치로 인한 것으로 보입니다. 파이썬 버그 3308 (closed: wontfix).

소스에서 하나를 다시 컴파일하지 않고 Windows에서 Python 2.6에서 작동하는 방식으로 Pygtk/PygoBject를 설치하는 방법이 있습니까?

도움이 되었습니까?

해결책

나는 그것을 잘 작동했고, 그것은 나에게 많은 어려움을주지 않았기 때문에 우리는 그것이 할 수 있다는 것을 알고 있습니다 ...

Windows 컴퓨터에 다음 모든 설치가 필요할 것입니다.

귀하의 경우 Pygtk 라이브러리가 DLL이있는 GTK+ 런타임 디렉토리를 찾지 못한다고 생각합니다. 환경 변수 GTK_BASEPATH가 GTK+ 런타임 (일반적으로 C : GTK)의 디렉토리로 설정해야합니다.

또한 참조하십시오 Pygtk-on-Windows FAQ

이제 py2exe로 Pygtk'ed Python을 컴파일하려고한다면 조금 더 복잡하지만 수행 할 수 있습니다 ...

다른 팁

Pygtk 올인원 설치 프로그램이 최근에 업데이트되었습니다.

http://ftp.gnome.org/pub/gnome/binaries/win32/pygtk/2.22/

이것은 pygtk, pygobject, pycairo, pygtksourceview2, pygoocanvas, pyrsvg, gtk+-bundle 및 glade를 설치합니다. 성공적으로 성공하는 데 필요한 모든 것입니다. import gobject, import gtk, DLL 문제가없는 등.

64 비트 Windows 사용자가 보입니다

http://digitalpbk.blogspot.in/2012/03/installing-pygtk-pypango-and-pycairo-on.html

위의 단계는 64 비트에서 유효하지 않은 DLL 오류를 제공합니다.

u는 pygtk, pycairo, pygboject 및 gtk+ 런타임이 있어야합니다 ...

하나의 설치 프로그램에 대해서는 이것을 참조하십시오http://aruiz.typepad.com/siliconisland/2006/12/allinone_win32_.html

임베디드 통역사를 통해 Pygtk를 실행할 계획이라면 C/C ++ 코드가 이미 GTK를 사용하고있는 경우 Pygtk 번들 팩 설치에주의하십시오. Pygtk 번들 팩은 GTK 런타임을 경로에 추가하지 않습니다.

이 경우 C 코드는 경로에서 GTK를 가져올 것입니다 (아마도 GTK 번들 팩을 이미 설치했을 것입니다). Python은 별도의 GTK 런타임 라이브러리 세트를 사용합니다.

따라서 내 경우 C Gui 또는 Python Gui는 제대로 실행되어 함께 달리는 동안 충돌하는 데 사용되었습니다.

Psychopy를 기본 파이썬 컬렉션으로 사용하면이 문제를 해결하기 위해 Pygtk Pygtk, Pycairo, Pygobject를 Psychopy 위에 설치했습니다.

Python 통역사를 초기화 한 후 하나의 GTK 런타임 세트 만 사용하는 것 외에도 C 코드에서 GTK에서 GTK (C 코드가 아님)를 통해 C 코드에서 GTK를 초기화해야했습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top