我在 Matlab 2017a 中创建了几个 mex 文件。当我使用 Visual Studio C++ 2017 编译它们时,它们在我的计算机上运行良好。但是,当我尝试在另一台计算机上使用它们时,我收到一条错误消息:
Error using mfss_mex.filter_uni
Invalid MEX-file
'path_to_mex_file\mexfile.mexw64':
Missing dependent shared libraries:
'MSVCP140.dll' required by
'path_to_mex_file\mexfile.mexw64'
'VCRUNTIME140.dll' required by
'path_to_mex_file\mexfile.mexw64'
我认为我可以通过在每台将运行该程序的计算机上安装 Visual Studio 运行时来解决此问题,但我想避免这种情况。有没有办法编译这些 mex 文件并避免与 Visual Studio C++ 编译器的这些依赖关系?
数学工厂solution https://www.mathworks.com/help/matlab/matlab_external/before-you-run-a-mex-file.html为此,请在任何存在此问题的计算机上安装 C++ 编译器运行时。
我发现我只需要复制有问题的内容.dll
files (MSVCP140.dll
and VCRUNTIME140.dll
)与我的在同一文件夹中.mexw64
文件和一切都运行没有问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)