私はMacでEnthough-Canopyを使って簡単なtkinter guiをコンパイルしようとしているときに問題があります。これは私がコンパイルしようとしているコードです:
from Tkinter import *
root= Tk();
root.title("Toplevel")
Label(root,text="This is the Toplevel").pack(pady=10)
root.mainloop()
これは私が受け取るメッセージです:
ImportError Traceback (most recent call last)
/Applications/Canopy.app/appdata/canopy-1.0.0.1160.macosx-
x86_64/Canopy.app/Contents/lib/python2.7/site-packages/IPython/utils/py3compat.pyc in
execfile(fname, *where)
181 else:
182 filename = fname
--> 183 __builtin__.execfile(filename, *where)
/var/folders/m1/70f55r290cz7j_sjc010k0n00000gn/T/tmp1gLNQA.py in <module>()
----> 1 from Tkinter import *
2
3 root= Tk();
4
5 root.title("Toplevel")
/Applications/Canopy.app/appdata/canopy-1.0.0.1160.macosx-
x86_64/Canopy.app/Contents/lib/python2.7/lib-tk/Tkinter.py in <module>()
37 # Attempt to configure Tcl/Tk without requiring PATH
38 import FixTk
---> 39 import _tkinter # If this fails your Python may not be configured for Tk
40 tkinter = _tkinter # b/w compat for export
41 TclError = _tkinter.TclError
ImportError: dlopen(/Applications/Canopy.app/appdata/canopy-1.0.0.1160.macosx-
x86_64/Canopy.app/Contents/lib/python2.7/lib-dynload/_tkinter.so, 2): Library not loaded:
/Library/Frameworks/Python.framework/Versions/111.222.33344/lib/libtcl8.5.dylib
Referenced from: /Applications/Canopy.app/appdata/canopy-1.0.0.1160.macosx-
x86_64/Canopy.app/Contents/lib/python2.7/lib-dynload/_tkinter.so
Reason: image not found
主な問題はTKかTCLですが、それは既にインストールされていてうまく機能しています(コードはAptana studio 3でうまくいきます)、しかし私がCanopyでそれを実行しようとすると失敗します。
あなたの時間とサポートをありがとう
回答:
回答№1は2デフォルトでは、CanopyはQt4グラフィカルバックエンドを使います。これら2つのバックエンドは1つのプロセスに共存できないため、問題が発生します。これを修正するには、Canopy Preferences> Pythonタブで、PyLabバックエンドをInteractive(Qt4)からInline(SVG)に変更してTkinterを使用できるようにします。
この2つの設定を切り替えることができますプロジェクトに応じて(デフォルトのQtバックエンドが一般的により魅力的であるために推奨されます)または戻る必要がない場合は単にインライン(SVG)を指定します。