使用pyinstaller打包python代碼

安裝: python

http://www.pyinstaller.org/下載最新的pyinstaller軟件包, 測試

當前的最新版本是pyinstaller-2.0 編碼

pyinstaller-2.0.tar.bz2 spa

tar jxvf pyinstaller-2.0.tar.bz2 .net

python 2.0是一個能夠免安裝的軟件包 命令行

cd pyinstaller-2.0 debug

直接運行 code

python pyinstaller.py -h ip

-F, –onefile 產生一個文件用於部署 (參見XXXXX).
-D, –onedir 產生一個目錄用於部署 (默認)
-K, –tk 在部署時包含 TCL/TK
-a, –ascii 不包含編碼.在支持Unicode的python版本上默認包含全部的編碼.
-d, –debug 產生debug版本的可執行文件
-w,–windowed,–noconsole 使用Windows子系統執行.當程序啓動的時候不會打開命令行(只對Windows有效)
-c,–nowindowed,–console 使用控制檯子系統執行(默認)(只對Windows有效)
-s,–strip 可執行文件和共享庫將run through strip.注意Cygwin的strip每每使普通的win32 Dll沒法使用.
-X, –upx 若是有UPX安裝(執行Configure.py時檢測),會壓縮執行文件(Windows系統中的DLL也會)(參見note)
-o DIR, –out=DIR 指定spec文件的生成目錄,若是沒有指定,並且當前目錄是PyInstaller的根目錄,會自動建立一個用於輸出(spec和生成的可執行文件)的目錄.若是沒有指定,而當前目錄不是PyInstaller的根目錄,則會輸出到當前的目錄下.
-p DIR, –path=DIR 設置導入路徑(和使用PYTHONPATH效果類似).能夠用路徑分割符(Windows使用分號,Linux使用冒號)分割,指定多個目錄.也能夠使用多個-p參數來設置多個導入路徑
–icon=<FILE.ICO> file.ico添加爲可執行文件的資源(只對Windows系統有效)
–icon=<FILE.EXE,N> file.exe的第n個圖標添加爲可執行文件的資源(只對Windows系統有效)
-v FILE, –version=FILE verfile做爲可執行文件的版本資源(只對Windows系統有效)
-n NAME, –name=NAME 可選的項目(產生的spec)名字.若是省略,第一個腳本的主文件名將做爲spec的名字

能夠看到pyinstaller各類封裝的功能 ci

咱們主要看--onefile這個flag

例如,咱們有一個腳本放在/tmp目錄下面:

hello.py

#!/usr/bin/python
import sys
sys.stdout.write("This is a python script")
sys.stdout.flush()
python pyinstaller.py --onefile /tmp/hello.py

這個步驟會在當前目錄下面生成一個hello的文件夾,

而後執行

python pyinstaller.py hello/hello.spec

會在dist目錄下面生成一個可執行文件,這個可執行文件就能夠獨立運行了

實際測試發現若是兩個環境的python版本不相同的話,可能運行會有問題

相關文章
相關標籤/搜索