Nuitka 打包pytorch项目

背景

Nuitka 是一种新型的打包技术,它可以把python代码用c重新编译并运行

具体操作可以参考Python打包exe的王炸-Nuitka。一定要耐着性子把视频看完,网上很多吹Nuitka的文章,然而我一直没有成功打包过pytorch项目(而我使用pyinstaller打包成功了),在我成功打包后,发现确实很方便,和pyinstaller有的一拼。

代码

import torch

a=torch.ones([100,100,3])

print(a)

打包过程

直接打包调试

命令

nuitka --standalone --mingw64 --show-memory --show-progress --nofollow-imports --output-dir=o index.py

运行

复制python环境中的pytorch包到程序根目录

降低numpy版本到1.16.*,并重新复制python环境中的numpy包到程序根目录

总结

Nuitka打包就是先略过torch,numpy,pyqt等系统库,运行时缺什么包就从对应python环境中复制相应的包过去就好了。

在我打包完pytorch代码并复制torch和numpy包到根目录后,还是出现了导入失败的问题。经过百度发现是由于numpy版本太高的原因。在我把numpy从1.19.*降到1.16.*之后,重复上述操作就打包成功了。

   

   

   

posted @ 2020-10-14 09:06  OnceMonkey  阅读(2621)  评论(0编辑  收藏  举报