pyinstaller

可选项

  • -F , -onefile: 指明该选项,将会生成一个总的exe文件,所有的文件都会被添加到这一个中。

  • -D, -onedir: 产生一个目录来盛装用于分发的exe文件,也比较方便。

  • -K, -tk: 在部署的时候,包含TCL/TK,这对于有图形界面的python文件比较的适用。

  • -a, -ascii: 不包含编码,因为在支持Unicode的Python版本上默认包含所有的编码,这个选项基本上不怎么用得到。

  • -d, -debug: 产生Debug版本的可执行文件。

  • -w, -windowed, -noconsole: 适用Windows子系统执行,当exe文件运行的时候,不会出现命令行CMD窗口。(因为是windows子系统,所以只在windows平台下有效。)

  • -c, -nowindowed, -console: 与上相反,出现CMD窗口,辅助用户操作。

  • -s, -strip: 这个参考别人的话为“可执行文件和共享库将run through strip,注意Cygwin的strip往往使得普通的win32DLL无法使用”。

  • -X, -upx: 压缩方式,如果有UPX安装,则会压缩源文件来执行。

  • -o DIR, -out=DIR: 指定DIR作为exe的生成目录,如果未指定,默认为pyinstaller的解压目录,且会根据python文件创建出同名的目录来保存生成的exe文件。

  • -p, DIR, -path=DIR: 设置导入的环境变量路径,windows下英文的分号分隔,也可以使用多个-p选项来设置导入多个路径(其实这个选项有点鸡肋,分发版的话基本上不怎么用得到)。

  • -icon=<FILE.ICO>: 将file.ico添加为exe文件的图标(可以自定义,注意为ico文件,否则格式不正确的话会出错的)。

  • -icon = <FILE.EXE, N>: 原理同上(只是把file.exe文件的第N个图标作为资源来使用,不怎么用得到)。

转载于:https://www.cnblogs.com/skysky/p/10006969.html

### PyInstaller 使用指南 #### 安装 PyInstaller 为了使用 PyInstaller 进行 Python 应用程序的打包,首先需要安装该工具。可以通过 pip 工具来完成这一操作: ```bash pip install pyinstaller ``` 对于拥有多个 Python 解释器的情况,建议指定特定版本的 Python 来运行上述命令,以确保正确安装到目标环境中[^2]。 #### 基本语法与选项说明 PyInstaller 提供了一系列参数用于控制打包过程的行为。基本命令结构如下所示: ```bash pyinstaller [OPTIONS] script.py ``` 常用的一些选项包括但不限于: - `-F` 或 `--onefile`: 将整个应用程序及其依赖项压缩成单个可执行文件。 - `-w` 或 `--windowed`: 对于图形界面应用,在 Windows 和 macOS 上不显示终端窗口启动;在 Linux 下此选项通常无效果。 - `-i ICON, --icon=ICON`: 设置生成的应用图标(仅限 Windows/macOS),需提供 .ico 文件路径作为参数传递给该项。 - `-n NAME, --name=NAME`: 自定义最终输出文件的名字,默认情况下会采用源码脚本名。 - `-D` 或者 `--onedir`: 创建一个目录并将所有必要的资源放入其中,而不是创建单一可执行文件。 具体实例展示见下文[^4]。 #### 实际案例分析 假设有一个名为 `Main.py` 的主入口文件,并希望将其转换为独立运行的应用程序,则可以在命令行输入以下指令实现目的: ```bash pyinstaller -D -i 1.ico -c -n Z_PID Main.py ``` 这条语句指定了几个重要设置:将项目编译为多文件模式(`-D`)、设定自定义图标 (`-i 1.ico`)、保持控制台可见 (`-c`) 并赋予新应用名称 (`Z_PID`). 当遇到复杂工程项目时,可能还需要通过 `.spec` 配置文件进一步调整细节配置,比如引入外部库或处理特殊类型的文件等。此时可以根据实际情况编辑对应的 spec 文件并再次调用 PyInstaller 加载它来进行构建工作[^3]. #### 处理常见问题 有时可能会碰到一些棘手的问题影响正常打包流程。例如,某些第三方模块无法被自动识别而缺失,这时就需要手动干预添加这些遗漏部分至打包清单内。另外值得注意的是,不同操作系统间存在差异性,因此针对跨平台开发场景下的兼容性测试也是必不可少的一环。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值