4

最近、Python 3.3 で Tkinter を使用するプログラムを作成しました。プログラムを、インストールを必要としない単純な実行可能ファイルとして配布したいと考えています。私は cx_freeze を使用してスクリプトを実行可能ファイルにコンパイルした経験がたくさんありますが、残念ながらスタンドアロン アプリケーションは生成されず、生成される実行可能ファイルの現在の作業ディレクトリにさまざまな DLL および pyd ファイルを配置する必要があります。py2exe や pyinstaller などの他のパッケージ プログラムも調べましたが、残念ながら Python 3.x をサポートしていません。では、Python 3.3 スクリプトを依存関係なしでスタンドアロンの実行可能ファイルにコンパイルする方法を知っている人はいますか?

ありがとう!

更新: cx_freeze が生成する exe ファイル内のすべての DLL ファイルと pyd ファイルを移動する Python スクリプトを作成しました。これはあまり「クリーンな」ソリューションではありませんが、通常の Python スクリプトで動作します。問題は、socket や tkinter などのモジュールをインポートするときにあり、実行可能ファイルはそれらを探す場所がわからないため、次のエラーが発生します。

ImportError: No module named '_socket'

実行可能ファイルが依存関係を探す場所を変更することで、これを修正する方法を誰かが知っていれば、それは素晴らしいことです。

4

1 に答える 1

1

問題の定義を「DLL を Windows 実行可能ファイルに焼き付けるにはどうすればよいですか?」に変更することを検討してください。このように問題を再構成できる場合は、ここにリストされているような解決策を適用できます: exe で依存関係をバンドルする方法

于 2013-04-27T04:13:35.057 に答える