私はこれに何時間も費やしました。Linuxでの私たちの仕事は、作業を完了するのではなく、断片化されたディストリビューション全体で機能しないスクリプトをデバッグすることのようです。
Setup.pyは、必要なものを見つけて、必要なものを見つけることができれば、特定の依存関係をラップするために使用されるcモジュールを構築しようとします。これにより、スクリプトはパスやファイル名に比べて非常に壊れやすくなります。
.pyソースから見分けるのは非常に難しいですが、tkinterにはtcl、tk、tixが必要なようです。これらの最新バージョンはすべてインストールされています。これを確認できるのは、SUSEディストリビューションのimports_tkinterモジュールとTkinterモジュールに付属しているPython 2.6が、テストスクリプトを正しく実行しているためです。
スクリプトはライブラリを見つける必要があるようです。32ビットと64ビットの両方をインストールしています。したがって、これらのライブラリが存在します:32ビット64ビットlibtk8.5.so / usr / lib /usr/lib64 libtcl8.5.so ""
両方のパスは、Setup.pyの適切な検索リストに含まれています。しかし、Setup.pyが正しいファイル名を検索するとは思いません。tkとtclで始まるファイルを検索し、さまざまなバージョン( '8.5'を含む)に対応しているようです。ただし、ファイル名は「lib」で始まりません。私がさらに改ざんを始める前に、Python.orgの人々は本当にこれをひどく台無しにしたでしょうか?それはありそうもないようです。SUSE Linuxはとても奇妙なディストリビューションですか?これもありそうにないようです。
setup.pyがバイナリを検索することはないと思います(実行時に問題になるようです...)が、それらはusr/libとusr/lib64に存在します。
私が見つけることができる唯一のインクルードファイルはtclextend用です。usr/includeにあるtclextend.hです。tclまたはtkの他の.hファイルが見つかりませんでした。もちろん、Python cラッパーに必要なインクルードファイルは、Python2.7のダウンロードで提供されます。
ですから、私はちょっと終わりです。これは非常に時間の無駄です。ビルドプロセスをスキップしてtcl/tkサポートをビルドする方法はありますか?私もsslで同じ問題を抱えています:それはビルドされません。一度に一つのことを。
ご協力いただきありがとうございます。