pyinstaller跨平臺python編譯問題總結

對於pyinstaller,可以完成在windows,linux,和mac下的python腳本編譯,生成exe,elf,.app文件;

1.使用方法;

在pyinstaller的官網上下載,一般是源碼包,可以解壓縮之後直接使用:

python pyinstaller.py  test.py

 在pyinstaller的目錄下 生成一個test目錄,並且含有buid和dist兩個子目錄,子目錄dist中存放可執行文件;


2.如果需要編譯成單個文件:

python pyinstaller.py   -F  test.py  

生成單個的可執行文件


3.如果需要添加軟件的圖標:

python pyinstaller.py   -F  test.py   -i test.icon

注意一定是icon文件纔行;


3.如果編譯GUI項目,可以使用

python  pyinstaller.py -w test.py

或者:

python  pyinstaller.py -w test.pyw


或者:

python  pyinstaller.py -w --noconsole( windwos平臺下)

linux下默認沒有彈窗(彈出terminal);


4.在mac環境下編譯,含有app可執行文件.

python  pyinstaller.py  test.py -w  --windowed

此時在項目目錄下含有unix可執行文件和app文件


5.壓縮可執行文件

使用upx;

upx支持windows,linux32/64位;


使用方法:

Windows下:將upx.exe直接放置於PyInstaller的目錄下;

linux下使用指令:
python  pyinstaller.py  test.py --upx-dir  /home/test/upx/


6.mac下pyinstaller編譯不穩定,可以使用py2app嘗試。


通過此次項目的完成過程,我體會到完成跨平臺軟件,兼容性是個大問題,此外,使用python完成的項目,暫時編譯成可執行文件之後文件太大,執行效率低下;

尤其是加入了GUI的項目,比如使用Qt之後的項目,編譯成可執行文件執行速度和效率都降低。

跨平臺項目最好選用C語言或者java,因爲現有的編譯器都很方便。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章