Pyinstaller打包exe后测试报错:Error loading ”torchlibcaffe2_nvrtc.dll“ or one of its dependencies

在我将pytorch打包后,到其他电脑上测试的时候碰见了此问题!
在这里插入图片描述

原因分类:

一、cuda版本错误:

如果打包之后,在打包的那台机器上也无法运行,且对应目录下已经存在了这个caffe2_nvrtc.dll文件,则可能是此问题。

1、命令行执行nvidia-smi查看cuda版本,根据显卡驱动选择与自身cuda对应的版本号

在这里插入图片描述
2、参考https://blog.csdn.net/qq_53357019/article/details/125725702 来安装cuda和对应版本的pytorch
3、再次打包进行测试

二、目标机器没有显卡驱动相关文件,造成某些dll缺失

打包后,在打包机器上可以运行exe ,但是在部分机器上报此错误时,则可能是此原因。

我使用的是多文件打包,这样方便补齐dll依赖。
1、若找到对应目录下不存在报错中对应的依赖caffe2_nvrtc.dll,在Anaconda配置环境的文件夹中搜索,一般情况可以找到,将其复制粘贴到对应目录下。
2、若存在,说明是缺少caffe2_nvrtc.dll的依赖项,使用Dependencies工具查看所需要的依赖项,后补齐到对应目录下。
Dependencies工具下载网站https://github.com/lucasg/Dependencies/releases 。可能加载较慢,因为服务器在外网。
在这里插入图片描述
下载红色的压缩包,解压缩。
执行DependenciesGui.exe,启动程序,把caffe2_nvrtc.dll直接拖拽进程序蓝绿色框区内。
在这里插入图片描述
显示情况如上图,如果缺少依赖,则会显示为红色标记,类似于:
在这里插入图片描述
这时候去能够运行成功的电脑上将这些文件拷贝到caffe2_nvrtc.dll所在的目录下。
如果缺少多个dll文件,一样是补齐就可以了,基本可以解决dll报错问题。
然后把补齐后的文件打成压缩包就可以了。如果重新打包,则需要手动复制粘贴加上dll文件。可以通过配置.spec文件来简化操作,自动打包。参考https://blog.csdn.net/chunzhi128/article/details/126349031
执行,成功!
Fight,win!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值