1

matplot lib をインストールするために Tkinter を起動して実行するのに問題があります。

Mac OS X 10.4.11 を実行しており、Python 2.6.4 をインストールしました。

他のいくつかの戦いの後、matlotlib をインストールするための残りの戦いの 1 つは、動作するバージョンの Tkinter を用意することです。Mac には Xcode と Python からいくつかありますが、それらは便利な場所にインストールされていないと思いますか? Python 2.6.4 をインストールした後、 import _tkinter が失敗しました。そこで、Tcl 8.5 をアクティブ状態からインストールしました。

ここで、Tkinter テストに進みます。

Tkinter._test() トレースバック (最新の呼び出しが最後): ファイル ""、1 行目、ファイル "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py" 内、3746 行目、_test root = Tk() ファイル "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py"、1645 行目、init self._loadtk( ) ファイル "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py"、1659 行目、_loadtk % (_tkinter.TK_VERSION, tk_version) で RuntimeError: tk.h バージョン(8.4) libtk.a のバージョン (8.5) と一致しません

私がここで説明している正確なエラーについてあなたが議論したことを認識しています: http://bugs.python.org/issue4017

しかし、これらのエラーは、setup.py が検索する順序を逆にした、以前のバージョンの Python の問題から発生しました。以前の投稿でのアドバイスは、setup.py でこの順序を修正して python を再構築することですが、私の setup.py はすでに見栄えがよく、次の行が含まれています。

def detect_tkinter_darwin(self, inc_dirs, lib_dirs): # フレームワークを使用する _tkinter モジュール。# フレームワークはまったく異なるため、UNIX の検索ロジックは共有できません。from os.path import join, exists framework_dirs = [ '/Library/Frameworks', '/System/Library/Frameworks/', join(os.getenv('HOME'), '/Library/Frameworks')

これを処理する方法についての洞察を本当に感謝します!(私は生物学者です...)

私がそれに取り組んでいる間、m matplotlib をインストールしようとしたときに何が起こっているのかを含めます。m matplotlib が役立つ場合に備えて... matplotlib は、私が Tkinter 8.4 を持っていると考えています (皮肉なことに、8.5 をインストールした後、それ以前は常にTkinter を見つけることができませんでした):

Tkinter: Tkinter: 65971、Tk: 8.4、Tcl: 8.4

また、matplotlib をビルドしようとしたときに発生するエラーは次のとおりです。

powerpc-apple-darwin8-g++-4.0.1: 認識されないオプション '-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk' i686-apple-darwin8-g++-4.0.1: 認識されないオプション '-syslibroot,/Developer/ SDKs/MacOSX10.4u.sdk' /usr/bin/ld: -syslibroot: 複数指定 collect2: ld が 1 終了ステータスを返しました /usr/bin/ld: -syslibroot: 複数指定 collect2: ld が 1 終了ステータスを返しました lipo: can' t 入力ファイルを開く: /var/tmp//ccrblCgU.out (そのようなファイルまたはディレクトリはありません) エラー: コマンド 'g++' が終了ステータス 1 で失敗しました make: *** [mpl_build] エラー 1

ありがとうございました!!

カトリーヌ

4

1 に答える 1

2

提案された以前のソリューションの重要な点は、インストール時に Python が Tk の正しいバージョンと場所を検出することだと思います。Python をインストールした後に Tk をインストールしたとします。この問題は、.dmg インストーラーを使用して Python2.6 を再インストールしたときに、私のマシンで解決されました。再構築する必要はありませんでした。これが役立つことを願っています。:)

于 2010-02-25T18:59:57.193 に答える