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,但未通过测试。python

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

===============================================github

0x01 安装windows

pip install pyinstaller

或者安装github上的develop版测试

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

 

0x02 使用方法spa

打包一个python文件(.py或者.pyw等后缀都没问题)debug

pyinstaller -F -w pcat.pyw

使用-F会在当前目录下的dist文件夹生成一个独立的exe文件,code

而使用-D(默认选项)则会在当前目录下的dist文件夹生成一个文件夹存放exe以及全部依赖文件。blog

当py文件有窗体时使用-w,在windows下不会显示控制台,-w在*NIX系统里会被忽略。ip

 

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,里面版本信息的格式能够参考。

相关文章
相关标签/搜索