pyinstaller打包tensorflow库 机器学习库

Python3使用pyinstaller打包tensorflow

 

1、打包:pyinstaller -F tensorf.py

  Pyinstaller打包程序:

-F  生成一个exe程序包

-w 无命令行弹框

-I 图标

2、运行:运行exe找不到依赖

 

方法1:缺少补啥(通过包添加依赖)

缺点:怀疑人生

方法2:使用tensorf.spec文件打包(手动添加依赖)

优点:依赖我说了算

生成spec文件:使用打包命令pyinstaller -F tensorf.py脚本

3、修改和解释 tensorf.spec文件:

Analysis :py脚本位置

pathex=:生成文件位置

binaries=依赖文件添加  (重点)

 

pyinstaller 打包原理:

将包依赖文件(文件来源D:\BaiduNetdiskDownload\python37\Lib\site-packages\依赖文件 ) 打包到指点位置

核心包:机器学习库:tensorflow (打包失败的根本原因是文件结构和我们一般的不一样)

D:\BaiduNetdiskDownload\python37\Lib\site-packages\tensorflow_core\lite\experimental\microfrontend\python\ops\_audio_microfrontend_op.so 依赖缺失

 

 

解决方法:在binaries中添加[(文件来源,打包依赖位置)]

upx_exclude=['.'],   ‘.’  表示当前。spec文件的位置  即打包依赖位置

4、再次打包

命令: pyinstaller -F filename.spec

 

5、添加缺少模块:

 

打开.spec文件

Hiddenimports :添加隐藏依赖

添加依赖模块

(获取隐藏文件的办法:不断重复 打包,根据提示添加(很多,多如牛毛))

 

 

runtime_tmpdir='.',  这个是临时文件(点击exe时运行文件将在当前exe文件所在目录下生成,运行完将自动删除)

临时文件:

 

 

 

6、Pyinstaller打包exe运行原理:

  打包文件释放依赖文件到临时文件中,临时文件运行生成临时python环境,运行python脚本,完成删除环境

7、翻车现场:

找不到from tensorflow.python import pywrap_tensorflow  找不到模块tensorflow.python 

 

打开提示

 

木有解决;

据我初步估计是模块打包的问题,(可以跑出结果,打包跑不出结果)

卸载,重新安装一下模块

 

命令:pip uninstall 模块

Pip install 模块

8、翻车2:

 

值得高兴的是,这是个缺少dll的问题  

 

添加依赖(.spec文件)

 

再次打包

9、胜利的号角

 

 

最后:

1、文章来源于实践,如遇问题,请留言,文章存在错误或疑问,请留言,谢谢您的阅读

2、转载请标注来源,感谢您的阅读

 

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
如果你想打包自定义,确保你已经安装了PyInstaller,并按照以下步骤进行操作: 1. 创建你的自定义。这可以是一个Python模块或一个包含多个模块的包。确保你的可以在你的开发环境中正常工作。 2. 在你的项目中,创建一个入口脚本(例如,main.py)来调用你的自定义。这个脚本应该是你打包的起点。 3. 打开终端,并转到你的项目目录中。 4. 运行以下命令来生成一个.spec文件: ``` pyi-makespec --onefile main.py ``` 5. 打开生成的.spec文件(例如,main.spec),你可以在其中找到一个名为`Analysis`的部分。 6. 在`Analysis`部分中,添加你的自定义的路径。如果你的自定义是一个单独的模块,可以使用以下代码: ``` a = Analysis(['main.py'], pathex=['path/to/your/library'], ...) ``` 如果你的自定义是一个包含多个模块的包,可以使用以下代码: ``` a = Analysis(['main.py'], pathex=['path/to/your/package'], ...) ``` 7. 保存并关闭.spec文件。 8. 在终端中运行以下命令来打包你的程序: ``` pyinstaller main.spec ``` 9. 打包完成后,在生成的`dist`目录中,你将找到一个可执行文件,其中包含了你的自定义。 请注意,打包自定义可能会涉及到其他的依赖项和配置。确保你的自定义和相关依赖在打包时都能正确地被包含进去。如果有其他特殊需求或问题,建议查阅PyInstaller的文档或相关的文档以获取更详细的指导。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值