在windows下 安裝比較方便又專門的安裝包python
而後cmd 進入 c:\python33\Scriptslinux
>cxfreeze E:\main.py --target-dir E:\windows
前面是源文件,若是有多個文件的話就是主程序在的文件,最後一個是生成程序的目錄函數
在linux下 下載cx_freeze的源碼後解壓,ui
進入cx_Freeze-4.3.4ip
輸入 sudo python3 setup.py build # 由於我用的是python3.4版本因此用python3 並且須要先安裝python3.4的devget
這編譯出錯cmd
build/temp.linux-x86_64-2.7/source/bases/Console.o:在函數‘GetImporterHelper’中:
/home/bill/Downloads/cx_Freeze-4.3.3/source/bases/Common.c:211:對‘PyObject_CallMethod’未定義的引用
/home/bill/Downloads/cx_Freeze-4.3.3/source/bases/Common.c:215:對‘PyErr_Clear’未定義的引用
build/temp.linux-x86_64-2.7/source/bases/Console.o:在函數‘GetDirName’中:
/home/bill/Downloads/cx_Freeze-4.3.3/source/bases/Common.c:66:對‘PyString_FromStringAndSize’未定義的引用
build/temp.linux-x86_64-2.7/source/bases/Console.o:在函數‘FatalError’中:
/home/bill/Downloads/cx_Freeze-4.3.3/source/bases/Console.c:24:對‘PyErr_Print’未定義的引用
/home/bill/Downloads/cx_Freeze-4.3.3/source/bases/Console.c:25:對‘Py_FatalError’未定義的引用
build/temp.linux-x86_64-2.7/source/bases/Console.o:在函數‘SetExecutableName’中:
/home/bill/Downloads/cx_Freeze-4.3.3/source/bases/Common.c:93:對‘PyString_FromString’未定義的引用
/home/bill/Downloads/cx_Freeze-4.3.3/source/bases/Common.c:115:對‘PyString_FromStringAndSize’未定義的引用
/home/bill/Downloads/cx_Freeze-4.3.3/source/bases/Common.c:136:對‘PyString_FromString’未定義的引用
build/temp.linux-x86_64-2.7/source/bases/Console.o:在函數‘FatalError’中:
/home/bill/Downloads/cx_Freeze-4.3.3/source/bases/Console.c:24:對‘PyErr_Print’未定義的引用 源碼
。。。。編譯
查了一下 網上有修改setup.py 將其中的if not vars.get("Py_ENABLE_SHARED", 0): 修改爲 if True:
就能夠了
最後 sudo python3 setup.py install
完成
用法 是 終端下 cxfreeze ~\main.py --target-dir ~\