安装mayavi命令,使用cxfreeze打包python脚本

news/2024/9/16 17:50:17/文章来源:https://www.cnblogs.com/nihaozaijian/p/18404801
pip install numpy出现A new release of pip is available: 23.2.1 -> 24.2
输入:
python -m pip install --upgrade pip setuptools wheelpip install PyQt5pip install vtk
pip install mayavi
pip install scipypip install configobj

 查看当前项目的依赖包:

pip freeze > requirements.txt

这个命令会将当前环境中安装的所有 Python 包及其版本信息写入 requirements.txt 文件中。 PS:如果你想在另外一个环境安装这些依赖包可以使用这个命令

pip install -r requirements.txt

2、使用cx freeze打包

新建一个脚本,这里为:setup.py

pip install cx_Freeze
from cx_Freeze import setup, Executablebuild_exe_options = {"packages": ["altgraph","apptools","configobj","contourpy","cx_Freeze","cx_Logging","cycler","envisage","importlib_metadata","importlib_resources","kiwisolver","lief","matplotlib","mayavi","numpy","packaging","pefile","pyface","pyparsing","PyQt5","six","traits","traitsui","typing_extensions","vtk","zipp","scipy"],'excludes': [],}setup(name="Test",version="1.0",description="zz.py",author="master",options={"build_exe": build_exe_options},executables=[Executable(script="zz.py", base="win32gui")])

packages:指定要包含在构建中的包列表。这些是你的脚本运行所需的依赖项。
excludes:这是一个空列表,表示没有包被排除在构建之外。

name:应用程序的名称。
version:应用程序的版本。
description:应用程序的简短描述。
author:应用程序的作者。
options:包括之前定义的构建选项。
executables:这是一个 Executable 对象的列表。每个 Executable 对象指定一个要转换为可执行文件的脚本。
script:应用程序的主脚本。
base:设置为 "win32gui",表示该应用程序是一个 Windows GUI 应用程序。

打包

python setup.py build

打开exe程序如果发生报错:
则根据报错信息,比如报错信息如下图的时候把虚拟环境下的dll复制到exe程序下的lib文件夹,然后把整个vtk.libs复制到lib文件下,即可解决

不单单只报一个错误,只需要根据错误找到缺少的文件复制过去就可以了,注意找到错误关键字,ModuleNotFundError,早不到可以用everything工具搜索。我感觉应该是VTK打包的时候会丢失文件,主要是使用了VTK依赖包的时候才会在打包出现各种问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/794834.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

工控机的重要技术:架构与功能

随着工业自动化的快速发展,工控机作为现代工业系统的重要组成部分,其核心技术的研究和应用愈发引起了各界的广泛关注。工控机,作为一种专门用于工业控制和监测的计算机系统,其架构与功能的有效设计和实现直接关系到工业生产的效率与安全。本文将从工控机的基本架构、核心功…

Kubernetes怎么进行NFS动态存储迁移

环境查看 系统环境# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) # uname -a Linux CentOS7K8SMaster01063 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux软件环境 # kubectl version Client Version…

Flutter provider和 getx 区别

前沿 Provider 和 GetX 是 Flutter 社区中常用的两种状态管理解决方案。 它们各自有不同的特点和使用场景,下面是它们的区别和示例,以便更好地理解和选择适合的状态管理方法。示例:Provider 和 GetX 的使用 1. 使用 Provider 的示例 假设我们有一个简单的计数器应用,点击按…

NVIDIA驱动,CUDA,CONDA环境安装

NVIDIA驱动安装检查驱动信息last rebootuname -rcat /var/log/apt/history.lognvidia-smill /usr/src/lsmod |grep nvidialspci |grep -i nvidiadmesg -i |grep nvidiadmesg |grep -i nvidiadmesg |grep -i nvrm dpkg --get-selections | grep linux-image查看加载内核版本zg…

一觉醒来,Qt、C#界面开发的天塌了?

再算上VC、PyQt,之前说“人生苦短,快用python”,现在要说人生苦短,快跳出泥潭!上位机、客户端界面传统开发太重,也不够美。传统开发中,还算不错的 毕竟大部分场景,界面并不是核心。大量时间精力投入在交互、美观、还有各种界面类“面向对象的封装”上,实在不划算。有指…

Linguistics-English-时态16种:4种时间4种状态 + 16种时态详解 + 8种时态的被动语态

时态16种: 4种时间 4种状态时态标志词 + 时态详解 + 8种语态的被动语态:

雨量监测系统需要哪些设备,带你360度无死角了解雨量监测系统

作为星创易联技术支持林工,我很高兴为大家介绍我们公司的雨量监测系统。在过去的几年里,我亲自参与了多个雨量监测项目的设计、部署和维护工作,积累了丰富的实践经验。今天,我将详细介绍我们的雨量监测系统,包括其组成部分、工作原理、应用场景以及部署注意事项。有兴趣的…

基础漏洞

目录 目录目录一、暴力破解漏洞描述无防护措施锁定机制验证码绕过二、xss漏洞(跨站脚本攻击)分类反射型(非持续型)攻击步骤存储型(持续型)攻击步骤DOM型危害三、CSRF漏洞(跨站请求伪造)四、SQL注入漏洞描述注入分类SQL注入分类及判断判断是否存在 Sql 注入漏洞判断 Sql…

LLog:Spring轻量级请求日志监控组件,集成管理面板,支持多条件查询检索

开源地址 https://gitee.com/lboot/LLog 简介 LLog是基于AOP构建的请求日志记录和查询工具库,通过引入该工具库,完成配置,实现对接口请求日志的记录、查询检索等功能。请求状态、时间、来源、耗时,请求参数,响应结果,作用接口记录支持与鉴权服务结合,记录请求来源为用户…

如何实现深拷贝?structuredClone

经典的面试题:如何实现深拷贝。 常规的回答主要是通过JSON或者遍历对象递归。主要是考核对对象操作方经典的面试题:如何实现深拷贝。 常规的回答主要是通过JSON或者遍历对象递归。主要是考核对对象操作方法的熟悉程度。今天来介绍另一个方案structuredClone()。什么是 struct…

信奥一本通题陈老师解题:1209:分数求和

​ 【题目描述】【输入】第一行是一个整数nn,表示分数个数,1≤n≤101≤n≤10; 接下来nn行,每行一个分数,用"p/qp/q"的形式表示,不含空格,p,qp,q均不超过1010。【输出】输出只有一行,即最终结果的最简形式。若为分数,用"p/qp/q"的形式表示。【输…

【OpenFeign 】OpenFeign 下的重试器的执行过程分析

1 前言 上节我们看了下 OpenFeign 里的重试,在从源码的角度看它的执行原理的时候,又意外的遇到了一个【OpenFeign 】OpenFeign 下未开启重试,服务却被调用了两次 的问题的分析,那本节我们就来看看重试器的一个入场以及执行的过程。 2 源码分析 首先我们要知道在默认的情况…