admin管理员组文章数量:1530057
**
在win10/11系统上打包适用于win 7/xp系统的Python应用程序(exe)(全过程)
**
一.安装合适的Anaconda包与合适版本的Python
1.安装合适的Anaconda包
打包程序之前需要安装较新版本的Anaconda包,低版本可能会存在各种bug。我遇到过的问题就有:
1.1 Bug1
进入命令提示符窗口(win+r,输入cmd,回车),运行下面一段代码:
set CONDA_FORCE_32BIT=1 //切换到32位
conda create --name python36 python=3.6 //创建一个python3.6的环境,命名为python36
conda info --envs //查看是否添加成功
activate python36 //切换到python3.6环境
python --version //确认python环境
运行 “ conda create --name python36 python=3.6 //创建一个python3.6的环境,命名为python36”此句时,创建失败。
1.2 Bug2
使用“conda update conda”,升级失败。
1.3 解决方法
- 进入命令提示符窗口(win+r,输入cmd,回车),输入“conda -V”检查自己的conda版本。(之前使用的4.6.11就有上述一系列问题)
- 如果安装的conda版本过低,请完整卸载Anaconda,安装较新版本的Anaconda。(我最终使用的是2021.11月份的版本,文件名:Anaconda3-2021.11-Windows-x86_64.exe)
2.安装支持win7/xp系统的python版本的虚拟环境
xp对python的版本支持最高只到python3.4.4,所以应在conda中安装python3.4.4及其以下版本的python程序。(但是程序中用到的其他包的适用于xp的低版本包不太好找,所以建议使用python3.4.4版本)
安装虚拟环境代码如下:
set CONDA_FORCE_32BIT=1 //切换到32位
conda create --name python344 python=3.4.4 //创建一个python3.4.4的环境,命名为python344
conda info --envs //查看是否添加成功
activate python344 //切换到python3.4.4环境
python --version //确认python环境
此处我将新建的python3.4.4的环境命名为python344,之后使用到的python344均为环境名,使用时请注意更换为你自己定义的环境名。
二.安装使用到的库
在程序中使用到的库,需选择支持win7/xp系统的库版本。
使用pip直接在线安装库时(pip install 库名称==版本),容易找不到库的资源而报错,报错时库可以从网络/GitHud上去找,下面给出我用到的几个库的安装方法。
2.1 安装pyinstaller,用来打包exe程序
安装方法见大佬的文章,文章链接如下:
https://blog.csdn/u012336596/article/details/112864589
2.2 安装PyQt5
安装方法见大佬的文章,文章链接如下:
https://blog.csdn/weixin_39535557/article/details/111780198
2.3 其他用到的库
- 一般的库直接网上搜索相应的库名,寻找可以适用于xp系统的版本进行下载安装。
- 安装方法:下载相应库版本的whl文件。
先进入安装的环境,再使用安装命令进行安装。进入命令提示符窗口,输入以下命令:
activate python344
pip install whl文件路径
- 常用的库的whl文件下载地址。(里面没有的库,可以去GitHub上找找看)
https://www.lfd.uci.edu/~gohlke/pythonlibs/
三.对py文件进行打包
- 使用pyinstaller打包文件,命令如下:
pyinstaller.exe -F 文件名.py -w
2.之后再使用此安装环境打包适用于xp系统exe程序的流程
进入命令窗口,运行下面代码:
activate python344
pyinstaller.exe -F 文件名.py -w
版权声明:本文标题:Python 打包适用于win 7xp系统的应用程序(exe) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1726467435a1071855.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论