pyinstaller打包使用注意事项

2024-09-06 07:28

本文主要是介绍pyinstaller打包使用注意事项,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

pyinstaller注意事项

为了打包python程序,将其转换为可执行程序方便调用,无论是linux还是windows环境都可以正常使用

环境推荐,python3.11

安装使用

前提条件是安装好了python3

pip install pyistaller -i https://pypi.tuna.tsinghua.edu.cn/simple/

安装后,检查版本

pyinstaller -v

打包程序,执行后打包程序在当前文件夹下得dist文件夹中

pyinstaller -F test.py

详细参数,基本用不上,懒得整理了

参数名描述
-D文件夹模式,打包生成一个文件夹,包含可执行文件和若干依赖项
-F单文件模式,打包生成一个单独的可执行文件
-h打印帮助信息

报错

写博客是因为报错,傻逼环境,通常安装都没有问题但是,打包得时候报错如下

PyInstaller.exceptions.PythonLibraryNotFoundError: Python library not found: libpython3.11.so, libpython3.11.so.1.0 This means your Python installation does not come with proper shared library files. This usually happens due to missing development package, or unsuitable build parameters of the Python installation.

结果就是找也找不到,搞半天,对应 libpython3.11.so毛都没有,find / -name libpython3.11.so也没用

原因是编译得时候没有这个库,需要重新编译

解决

首先到python压缩包路径下

./configure --prefix=/usr/local/python3 --enable-shared

然后

make && make install

此时可能会报错,Creating directory /usr/local/python3/bin /usr/bin/install: cannot change permissions of ‘/usr/local/python3/bin’: No such file or directory Creating directory /usr/local/python3/lib /usr/bin/install: cannot change permissions of ‘/usr/local/python3/lib’: No such file or directory Makefile:1928: recipe for target ‘altbininstall’ failed

表明在安装过程中,make install 试图在 /usr/local/python3/bin/usr/local/python3/lib 目录下创建文件夹,但是这些目录不存在,或者没有权限。所以手动创建需要的目录:

sudo mkdir -p /usr/local/python3/bin
sudo mkdir -p /usr/local/python3/lib

确保有写入权限

sudo chown -R $(whoami) /usr/local/python3

重新运行安装

make && make install

因为echo “/usr/local/python3/lib/” >> /etc/ld.so.conf没有权限,所以使用 sudo tee 来正确写入系统文件

echo "/usr/local/python3/lib/" | sudo tee -a /etc/ld.so.conf

更新动态链接库配置

sudo ldconfig

这样之后就不会报错了,SB环境

pyinstaller -F test.py

这篇关于pyinstaller打包使用注意事项的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1141382

相关文章

Mysql中RelayLog中继日志的使用

《Mysql中RelayLog中继日志的使用》MySQLRelayLog中继日志是主从复制架构中的核心组件,负责将从主库获取的Binlog事件暂存并应用到从库,本文就来详细的介绍一下RelayLog中... 目录一、什么是 Relay Log(中继日志)二、Relay Log 的工作流程三、Relay Lo

使用Redis实现会话管理的示例代码

《使用Redis实现会话管理的示例代码》文章介绍了如何使用Redis实现会话管理,包括会话的创建、读取、更新和删除操作,通过设置会话超时时间并重置,可以确保会话在用户持续活动期间不会过期,此外,展示了... 目录1. 会话管理的基本概念2. 使用Redis实现会话管理2.1 引入依赖2.2 会话管理基本操作

Springboot请求和响应相关注解及使用场景分析

《Springboot请求和响应相关注解及使用场景分析》本文介绍了SpringBoot中用于处理HTTP请求和构建HTTP响应的常用注解,包括@RequestMapping、@RequestParam... 目录1. 请求处理注解@RequestMapping@GetMapping, @PostMappin

springboot3.x使用@NacosValue无法获取配置信息的解决过程

《springboot3.x使用@NacosValue无法获取配置信息的解决过程》在SpringBoot3.x中升级Nacos依赖后,使用@NacosValue无法动态获取配置,通过引入SpringC... 目录一、python问题描述二、解决方案总结一、问题描述springboot从2android.x

SpringBoot整合AOP及使用案例实战

《SpringBoot整合AOP及使用案例实战》本文详细介绍了SpringAOP中的切入点表达式,重点讲解了execution表达式的语法和用法,通过案例实战,展示了AOP的基本使用、结合自定义注解以... 目录一、 引入依赖二、切入点表达式详解三、案例实战1. AOP基本使用2. AOP结合自定义注解3.

Python中Request的安装以及简单的使用方法图文教程

《Python中Request的安装以及简单的使用方法图文教程》python里的request库经常被用于进行网络爬虫,想要学习网络爬虫的同学必须得安装request这个第三方库,:本文主要介绍P... 目录1.Requests 安装cmd 窗口安装为pycharm安装在pycharm设置中为项目安装req

使用Python将PDF表格自动提取并写入Word文档表格

《使用Python将PDF表格自动提取并写入Word文档表格》在实际办公与数据处理场景中,PDF文件里的表格往往无法直接复制到Word中,本文将介绍如何使用Python从PDF文件中提取表格数据,并将... 目录引言1. 加载 PDF 文件并准备 Word 文档2. 提取 PDF 表格并创建 Word 表格

使用Python实现局域网远程监控电脑屏幕的方法

《使用Python实现局域网远程监控电脑屏幕的方法》文章介绍了两种使用Python在局域网内实现远程监控电脑屏幕的方法,方法一使用mss和socket,方法二使用PyAutoGUI和Flask,每种方... 目录方法一:使用mss和socket实现屏幕共享服务端(被监控端)客户端(监控端)方法二:使用PyA

Python使用Matplotlib和Seaborn绘制常用图表的技巧

《Python使用Matplotlib和Seaborn绘制常用图表的技巧》Python作为数据科学领域的明星语言,拥有强大且丰富的可视化库,其中最著名的莫过于Matplotlib和Seaborn,本篇... 目录1. 引言:数据可视化的力量2. 前置知识与环境准备2.1. 必备知识2.2. 安装所需库2.3

Python数据验证神器Pydantic库的使用和实践中的避坑指南

《Python数据验证神器Pydantic库的使用和实践中的避坑指南》Pydantic是一个用于数据验证和设置的库,可以显著简化API接口开发,文章通过一个实际案例,展示了Pydantic如何在生产环... 目录1️⃣ 崩溃时刻:当你的API接口又双叒崩了!2️⃣ 神兵天降:3行代码解决验证难题3️⃣ 深度