「virtualenv」の PyGTK で奇妙な問題が発生しています。gtk は私の virtualenv にはインポートされませんが、私のグローバル python インストールにはインポートされます。(先週、この特定の問題は発生していませんでした。ソフトウェアの更新が何かを混乱させたと推測しています。)
この動作を解決する良い方法はありますか?
ここに示されています: gtk をグローバルにインポートし、
tom@zeppelin:~$ python
Python 2.7.1+ (r271:86832, Sep 27 2012, 21:12:17)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import gtk
>>> gtk
<module 'gtk' from '/usr/lib/pymodules/python2.7/gtk-2.0/gtk/__init__.pyc'>
gtkのインポートに失敗し、
tom@zeppelin:~$ workon py27
(py27)tom@zeppelin:~$ python
Python 2.7.1+ (r271:86832, Sep 27 2012, 21:12:17)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import gtk
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named gtk
残念ながら、これは私の ipython --pylab 環境を壊しました: http://pastebin.com/mM0ur7Hc
更新:grepic/このスレッドで提案されているように、シンボリックリンクを追加することでこれを修正できました: Python: virtualenv - gtk-2.0
小さな違いがあります。つまり、私の「カイロ」パッケージは/usr/lib/pymodules/python2.7/cairo/
ではなく にありました/usr/lib/python2.7/dist-packages/cairo
。
venv/bin/activate
2 番目の更新:次の行を my に追加すると便利であることがわかりました。
export PYTHONPATH=$PYTHONPATH:/home/tom/.virtualenvs/py27/lib/python2.7/dist-packages
export PYTHONPATH=$PYTHONPATH:/home/tom/.virtualenvs/py27/lib/python2.7/dist-packages/gtk-2.0
export PYTHONPATH=$PYTHONPATH:/usr/lib/pymodules/python2.7/gtk-2.0
(これらのうちの 1 つまたは複数は不必要であると思われますが、これを長い間いじっていたので、調査をやめることにしました。セットアップが機能するようになったので満足しています。)
問題が解決しました!みんな、ありがとう。