【Python源码保护】04 - pyinstaller

PyInstaller将Python应用程序及其所有依赖项捆绑到一个包中。用户可以在不安装Python解释器或任何模块的情况下运行打包的应用程序。PyInstaller支持Python 3.8及更新版本,并正确地捆绑了许多主要的Python包,如numpy、matplotlib、PyQt、wxPython等。

PyInstaller针对Windows、MacOSX和Linux进行了测试。然而,它不是一个交叉编译器;制作一个Windows应用程序,你可以在Windows上运行PyInstaller,制作一个Linux应用程序,需要在Linux上运行它。

安装pyinstaller

pip install pyinstaller

Windows下生成exe示例:

hello.py:

print('Hello World!')

执行以下命令生成exe文件:

pyinstaller -F hello.py

生成的目录结构如下:

【Python源码保护】04 - pyinstaller_第1张图片

在dist目录下生成了一个hello.exe可执行文件。

PyInstaller 不仅支持 -F 选项,而且也支持如下表所示的常用选项。

-h,–help 查看该模块的帮助信息
-F,-onefile 产生单个的可执行文件
-D,–onedir 产生一个目录(包含多个文件)作为可执行程序
-a,–ascii 不包含 Unicode 字符集支持
-d,–debug 产生 debug 版本的可执行文件
-w,–windowed,–noconsolc 指定程序运行时不显示命令行窗口(仅对 Windows 有效)
-c,–nowindowed,–console 指定使用命令行窗口运行程序(仅对 Windows 有效)
-o DIR,–out=DIR 指定 spec 文件的生成目录。如果没有指定,则默认使用当前目录来生成 spec 文件
-p DIR,–path=DIR 设置 Python 导入模块的路径(和设置 PYTHONPATH 环境变量的作用相似)。也可使用路径分隔符(Windows 使用分号,Linux 使用冒号)来分隔多个路径
-n NAME,–name=NAME 指定项目(产生的 spec)名字。如果省略该选项,那么第一个脚本的主文件名将作为 spec 的名字

pyinstaller官方文档: https://pyinstaller.org/en/v6.3.0/

你可能感兴趣的:(python,python,开发语言)