2011-11-02 65 views
8

我已經在64位機器上爲使用cx freeze的windows創建了64位程序。我正在使用Windows 7 64位家庭高級版。 py2exe不工作,因爲據我瞭解,它不適用於Python 3.2.2。有沒有我必須在cx freeze中指定的選項,以32位而不是64位編譯。從64位機器上的python代碼創建32位exe文件

謝謝!

+0

您是否安裝了32位Python? –

+0

不,我應該先卸載我的其他安裝嗎? – Sneitzke38

+0

我也會安裝32位的cx freeze。正確? – Sneitzke38

回答

5

要生成32位可執行文件,您需要安裝32位版本的Python和cx_freeze。

0

我所知道的所有「從Python代碼生成可執行文件」的方法基本上都會創建一個文件,將Python解釋器與要在單個文件中執行的Python代碼捆綁在一起。完全沒有像編譯C代碼到可執行文件一樣; Python不可能以任何更有用的方式進行編譯,而不僅僅是將Python字節碼粘貼到Python解釋器的機器代碼中。

所以這幾乎可以肯定,爲什麼你不能從64位安裝的Python生成一個32位的exe;輸出文件中沒有嵌入32位解釋器。

3

除了已經給出了答案:

  1. 要編譯不同的架構(X86/X64)/冷凍Python代碼,安裝兩者蟒蛇的x86和x64版本,您的系統以及所有必需的模塊和庫的相應版本到您的python安裝,因此兩個安裝都安裝了相同(必需)的軟件包集合。
  2. 下一步是檢查您的全球操作系統環境配置正確。下面的Windows環境變量需要指向你要凍結到Python的適當的安裝,你應該知道他們需要爲指向的位置:
    • %PATH%
    • %PYTHONHOME%
    • %PYTHONPATH%
  3. 一旦建立起來得當,重新打開任何終端,以確保你有新的環境中加載(如果需要重新登錄到Windows會話以正確刷新您的環境),並且您已準備好運行您的cx_freeze和任何其他與python相關的構建操作,以獲得該體系結構的最終構建。
  4. 一旦完成這些構建,重新運行步驟2中的過程,將Windows環境更改爲下一個Python安裝和構建。

要加快環境變化過程,我要麼編寫這些步驟的腳本,要麼使用虛擬機。

希望這會有所幫助。