Python 2.6 を使用して Windows に PyGTK / PyGobject をインストールするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1294272

  •  18-09-2019
  •  | 
  •  

質問

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 への切り替えが原因であるようです。 Python のバグ 3308 (closed: wontfix).

どちらかをソースから再コンパイルすることなく、Windows 上の Python 2.6 で動作する方法で PyGTK/PyGObject をインストールする方法はありますか?

役に立ちましたか?

解決

問題なく動作しており、特に問題はなかったので、できることはわかっています...

おそらく、次のすべてが Windows マシンにインストールされている必要があることに注意してください。

あなたの場合、PyGTK ライブラリが DLL がある GTK+ ランタイム ディレクトリを見つけていないのではないかと思います。環境変数 GTK_BASEPATH を GTK+ ランタイムのディレクトリ (通常は C:\GTK) に設定する必要があります。

もご覧ください。 PyGTK-on-Windows に関するよくある質問

ここで、PyGTK で作成された Python を Py2EXE でコンパイルしようとすると、少し複雑になりますが、同様に実行できます。

他のヒント

PyGTKのオールインワンのインストーラは、最近更新されています:

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

これはPyGTKを、PyGObject、PyCairo、PyGtkSourceView2、PyGooCanvas、PyRsvg、-bundleとグレイドGTK +をインストールします。それはDLLの問題もなく、絶対にすべて必要に成功import gobjectことができるようにするため、import gtk、などである。

64ビットのWindowsユーザーが参照するために、

ます。http://digitalpbk.blogspot。中/ 2012/03 /インストール-PyGTKを-pypango-と-pycairo-on.htmlする

上記の手順は、無効なDLLに64ビットのエラーが発生します。

uはPyGTKを、pycairo、pygbojectとGTK +ランタイムを持っている必要があります...

すべての内の1つのインストーラのためにこれを見ます http://aruiz.typepad.com/siliconisland/2006/12/allinone_win32_。 HTML

組み込みインタプリタとC / C ++コードをPyGTKのを実行するためのいずれかの計画はすでにGTKを使用している場合はPyGTKのバンドルパックのインストールについては注意してください。 PyGTKのバンドルパックは、PATHにそのGTKランタイムを追加しません。

このような場合には、おそらく(おそらくあなたはすでにGTKバンドルパックがインストールされているとして)Cコードは、PATHからGTKを取るとPythonは、GTKランタイム・ライブラリーの別のセットを使用します。

は、従って私の場合にはC GUIまたはPythonのGUIのいずれかが適切に実行され、一緒に実行している間の競合に使用するために使用する。

私はこの問題を解決するために、私のベースのpythonのコレクションとしてPsychopyを使用すると、

私はちょうどPsychopyの上にPyGTKをPyGTKを、Pycairo、Pygobjectをインストールしています。

別にGTKランタイムの唯一のセットを使用してから私は、Pythonインタプリタを初期化した後(私のCコードで)ないgtk_init(&argcの、&argvのことで)PyGTKを通じ、私のCコードでGTKを初期化する必要がありました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top