5

私はubuntu12.0432ビットでpyinstaller2.0とpython2.7を使用して実行可能ファイルを作成しました(したがって、pythonも32ビットであると想定しています)。

これは、TCP / IPサーバーに接続してフレームを送信する、コンソール(GUIなし)の単純なプログラムです。私のubuntu32ビットでは動作しますが、Windows732ビットおよび64ビットでは動作しません。Win32bitでは「デバイスの準備ができていません」というエラーを返し、Win64bitでは「アプリケーションのアーキテクチャが間違っています」というエラーを返します。

これの原因はどこにありますか?

これがアプリコード全体へのリンクです(小さいです)http://pastebin.com/qj96vpgK

4

1 に答える 1

7

.exeLinuxバージョンのPyInstallerは、またはLinuxネイティブ以外の形式を作成できません。Windowsを実行可能にするためには、WINEを使用するか(または少なくとも彼らはそう言っていますが、その方法はわかりません)、Windowsコンピューターを使用する必要があります。

また、使用しているWindowsコンピュータが32ビットの場合、64ビットのバイナリを作成することはできません。Windowsを64ビットでインストールしている場合は、64ビットのバイナリを簡単に作成できますが、32ビットのバイナリを作成するには、32ビットバージョンのPython(およびプログラムに必要なすべてのライブラリ)をインストールする必要があります。 )。

したがって、特定のプログラムに対して32ビットと64ビットの両方の実行可能ファイルを作成し、コードをWindows 64ビットOSにコピーし、32ビットと64ビットのPythonとをインストールし、pywin32それぞれ異なるPythonを使用してPyInstallerを使用する1つの方法。

于 2014-07-09T18:51:49.060 に答える