centos 7.9 下利用miniconda里的pyinstaller打包python程序为二进制文件操作方法

centos 7.9 下利用miniconda里的pyinstaller打包python程序为二进制文件操作方法

一.centos 7.9 操作系统安装

参考:https://blog.csdn.net/qq_46015509/article/details/134572030?utm_source=miniapp_weixin
安装完成后用后台连接工具连上虚拟机

二.安装python3

0x01. 下载安装相关依赖库(需要连通互联网)
sudo yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel gcc libffi-devel
0x02.下载Python3得安装包到本地,此处使用Python-3.9.15.tgz安装包
wget https://www.python.org/ftp/python/3.9.15/Python-3.9.15.tgz
如果出现虚拟机内下载很慢的情况,可以直接宿主机访问https://www.python.org/ftp/python/站点进行下载你想要的安装包
0x03.解压初始化编译安装,以及创建软连接
解压:tar -zvxf Python-3.9.15.tgz
切到解压之后的目录:cd Python-3.9.15/
初始化配置:./configure --prefix=/usr/local/python3
编译安装: make && make install
做软链接:ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
检查Python3是否安装成功 :python3 -v

三.更新yum,安装Miniconda进行初始化配置,使用conda安装pyinstaller,以及更新pip相关应用程序

yum update
安装Miniconda:
<1>.下载:wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
<2>.赋权并执行:chmod 777 Miniconda3-latest-Linux-x86_64.sh && ./Miniconda3-latest-Linux-x86_64.sh
<3>.一路enter,直到来到<Do you accept the license terms?>,输入yes,enter回车


<4>.来到指定安装目录,在箭头处输入默认路径/root/miniconda3,enter回车,等待安装完成,最后一个来到<You can undo this by running conda init --reverse $SHELL? [yes|no]>,输入默认的no回车即可,至此Miniconda安装完了

把conda命令放到配置文件中:vim ~/.bashrc
在最下面一行加上 export PATH=/root/miniconda3/bin:$PATH,保存退出
执行source ~/.bashrc
验证conda命令是否可用: conda info

在conda里安装你得python程序运行所需的模块
我这里安装flask和pymysql
0x01.conda install flask
0x02.conda install pymysql


更新Miniconda里面的pip: pip install --upgrade pip
更新下载Miniconda里面的pyinstaller: pip install pyinstaller -i https://mirror.baidu.com/pypi/simple
更新下载pyinstaller相关引用程序:pip install auto-py-to-exe -i https://mirror.baidu.com/pypi/simple
至此Pyinstaller相关安装和更新就结束了,下面演示具体用法

四.pyinstaller打包工具用法

pyinstaller -F apply.py
(--hidden-import 导入模块)
pyinstaller -F --hidden-import=flask --hidden-import=pymysql --hidden-import=json app.py
打包之后生成的二进制文件在dist目录下

nohup ./apply > nohup.log &
把二进制文件放到后台执行,把执行日志导入到nohup.log里面
cat nohup.log

在这里顺带提一下windows上的Python程序打包为可执行文件打包方法
pip install pyinstaller
(--add-data导入当前目录下的其他依赖文件)
pyinstaller -F cy_interfaces.py --add-data "XXX.py;."
这个可执行文件得在cmd命令行中执行

相关推荐
赛丽曼10 分钟前
Python中的简单爬虫
爬虫·python
CODE_RabbitV17 分钟前
Python + 深度学习从 0 到 1(00 / 99)
开发语言·python·深度学习
微凉的衣柜1 小时前
在 PyTorch 中进行推理时,为什么 `model.eval()` 和 `torch.no_grad()` 需要同时使用?
人工智能·pytorch·python
int WINGsssss1 小时前
使用系统内NCCL环境重新编译Pytorch
人工智能·pytorch·python
孤单网愈云1 小时前
11.25Pytorch_手动构建模型实战
人工智能·pytorch·python
ZXF_H2 小时前
pip安装github上的开源软件包
git·python·github·pip
没事别学JAVA2 小时前
使用Python编写Windows系统服务管理脚本,主要用于管理mysql、postgresql等服务
windows·python
yivifu3 小时前
用python将一个扫描pdf文件改成二值图片组成的pdf文件
python·pdf·numpy·pillow·pymupdf
Eric.Lee20214 小时前
数据集-目标检测系列- 装甲车 检测数据集 armored_vehicles >> DataBall
python·算法·yolo·目标检测·装甲车检测