PyInstaller安裝使用方法


PyInstaller可以把Python應用程序及其所有依賴項捆綁到一個包中。用戶可以在不安裝Python解釋器或任何模塊的情況下運行打包的應用程序。PyInstaller支持Python 2.7和Python 3.3+,並支持諸如numpy,PyQt,Django,wxPython等主要Python軟件包。
PyInstaller針對Windows,Mac OS X和Linux進行了測試。但是,它不是一個交叉編譯器:要制作一個Windows應用程序,你需要在Windows中運行PyInstaller;在Linux中運行Linux應用程序等。PyInstaller已成功用於AIX,Solaris和FreeBSD,但未經過測試。

官方文檔:https://pyinstaller.readthedocs.io/en/stable/

===============================================

0x01 安裝

pip install pyinstaller

或者安裝github上的develop版

pip install https://github.com/pyinstaller/pyinstaller/tarball/develop

 

0x02 使用方法

打包一個python文件(.py或者.pyw等后綴都沒問題)

pyinstaller -F -w pcat.pyw

使用-F會在當前目錄下的dist文件夾生成一個獨立的exe文件,

而使用-D(默認選項)則會在當前目錄下的dist文件夾生成一個文件夾存放exe以及所有依賴文件。

當py文件有窗體時使用-w,在windows下不會顯示控制台,-w在*NIX系統里會被忽略。

 

0x03 先生成spec文件

如果不使用--specpath指定路徑,會在當前目錄下生成一個spec文件,pyinstaller是根據spec文件來創建exe文件。

這個spec文件也是可以先生成的:

pyi-makespec [options] pcat.spec

*其中的[options]代表各種參數

這里生成spec文件后,你可以對其進行修改后,再來安裝

pyinstaller [options] pcat.spec

 

0x04 一些常用參數

-d #debug模式,可以得到運行時的跟蹤
-p DIR #可以增加pyinstaller搜索模塊的路徑,多個路徑以:分隔。默認site-packages目錄下都是可以被識別的
--add-data <SRC;DEST or SRC:DEST> #增加非二進制文件到目錄下,windows以;分隔而且得用雙引號包含,而*NIX以:分隔
--add-binary <SRC;DEST or SRC:DEST> #增加二進制文件到目錄下
-i <FILE.ico or FILE.exe,ID or FILE.icns> #給打包的文件添加圖標
--version-file FILE #windows里可把版本信息注射到exe里

其中--add-data、-i 等以后有空補充詳細點

而--version-file需要的版本信息文件是需要格式的,

切換到python安裝目錄下的\Lib\site-packages\PyInstaller\utils\cliutils下,有一個grab_version.py文件

python grab_version.py C:\Windows\System32\cmd.exe

會生成一個file_version_info.txt,里面版本信息的格式可以參考。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM