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命令行中执行

相关推荐
csdn_aspnet3 分钟前
如何在 Mac、Ubuntu、CentOS、Windows 上安装 MySQL 客户端
linux·windows·mysql·macos·centos
梦想平凡16 分钟前
情怀源代码工程实践(加长版 1/3):确定性内核、事件回放与最小可运行骨架
开发语言·javascript·ecmascript
笑我归无处25 分钟前
强引用、软引用、弱引用、虚引用详解
java·开发语言·jvm
02苏_25 分钟前
秋招Java面
java·开发语言
Q_Q196328847530 分钟前
python+django/flask基于机器学习的就业岗位推荐系统
spring boot·python·django·flask·node.js·php
ytttr87333 分钟前
64QAM信号的数字预失真处理(MATLAB实现)
开发语言·matlab
Nebula_g38 分钟前
C语言应用实例:硕鼠游戏,田忌赛马,搬桌子,活动选择(贪心算法)
c语言·开发语言·学习·算法·游戏·贪心算法·初学者
爱吃甜品的糯米团子1 小时前
详解 JavaScript 内置对象与包装类型:方法、案例与实战
java·开发语言·javascript
guygg881 小时前
Rocky Linux 8.9配置Kubernetes集群详解,适用于CentOS环境
linux·kubernetes·centos