最近在打包一个Python项目,本地配置好,准备搬运到其他电脑。却一直出现一个错误。
错误提示如下:
2025-01-15 20:32:56.4062784 [E:onnxruntime:Default, provider_bridge_ort.cc:1744 onnxruntime::TryGetProviderInfo_CUDA] C:\a\_work\1\s\onnxruntime\core\session\provider_bridge_ort.cc:1426 onnxruntime::ProviderLibrary::Get [ONNXRuntimeError] : 1 : FAIL : LoadLibrary failed with error 126 "" when trying to load "D:\tonyhub-CosyVoiceApp\env\lib\site-packages\onnxruntime\capi\onnxruntime_providers_cuda.dll"
按理说,这个问题就是由于缺少onnxruntime_providers_cuda.dll才导致的。但是当你去指定路径查看的时候,发现并没有缺这个文件,而且路径也没错。
这么依赖,就有点束手无策了。
其实,我对这这错误的理解有误。他说的是并不是onnxruntime_providers_cuda.dll本身有问题,而是这个DLL本身依赖的一些DLL缺失了。
那么,如何知道具体的缺失文件呢?
这个时候一个很神奇的工具就要出场了。这个 工具的名字叫dependencies。
只要把DLL文件拖动到这个软件上面,他就自动检查所有依赖,正确显示依赖文件的路径。同时可以看到缺少的依赖文件。
知道了缺少什么依赖之后,只要把这些依赖文件添加到环境变量里就可以了。