Caffe-Windows运行create_mnist.sh报错求助:找不到libopenblas.dll
解决Windows下Caffe运行create_mnist.sh时libopenblas.dll找不到的问题
我之前在Windows环境折腾Caffe的时候也碰到过一模一样的问题——明明编译成功了,跑脚本却卡在动态库找不到这一步,给你几个亲测有效的排查和解决方法:
让系统能找到libopenblas.dll
即使你把第三方库放在了指定文件夹,Windows的动态库加载逻辑可能没识别到它。可以试试这两个办法:- 找到
libopenblas.dll文件(一般在Caffe的第三方库目录,比如3rdparty/openblas/bin这类路径),把它复制到C:/Users/zhang/caffe-windows/Build/x64/Release/目录下,也就是convert_mnist_data.exe所在的文件夹。 - 把该dll所在的路径添加到系统的环境变量PATH里,重启终端后再运行脚本。
- 找到
检查脚本里的路径格式
Windows下用Git Bash或MinGW运行sh脚本时,路径斜杠很容易出问题。打开create_mnist.sh看看convert_mnist_data.exe的绝对路径是不是正确的,要确保用的是C:/xxx这种正斜杠格式,别用C:\xxx反斜杠(会被脚本当成转义符)。验证OpenBLAS的版本匹配性
再确认下你用的OpenBLAS和编译Caffe时的配置是否一致:- 打开
caff.sln,检查OpenBLAS相关项目是否真的编译成功,生成了对应版本的dll。 - 确认是64位Release版本的dll(因为你调用的是
x64/Release下的exe),32位和64位、Debug和Release版本不匹配也会导致加载失败。
- 打开
另外,你可以试试直接在cmd或PowerShell里手动执行convert_mnist_data.exe的完整命令,看看会不会报错,这样能快速区分是脚本的问题,还是库本身的问题。
内容的提问来源于stack exchange,提问作者monkeyking9528
相关产品推荐
相关产品推荐

