Problem With MEX files and DLLs
5 次查看(过去 30 天)
显示 更早的评论
So I have been getting the same error for every mex file I've attempted to run. To be clear I wrote a program with a bunch of mex files in it on another computer and then transferred that program to multiple computers. On all of the computers it works except for one where I get the following error message for every single MEX file in the program.
Invalid Mex File <name of mex>.mexw64:
Missing symbol
'?to_ustring@i18n@fl@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@PEBD@Z' in
'<path to MATLAB>\MATLAB\R2017b/bin/win64\libmwi18n.dll' required by
'<path to mex>\<name of mex>.mexw64'.
Does anyone know how to fix this problem?
4 个评论
Walter Roberson
2017-11-2
By the way, the above demangles to
class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > __cdecl fl::i18n::to_ustring(char const * __ptr64)
In short, it is having trouble finding fl::i18n::to_ustring in libmwi18n.dll
采纳的回答
James Tursa
2017-11-2
编辑:James Tursa
2017-11-2
In general, compiled mex routines are not guaranteed to be compatible between different versions of MATLAB. E.g., the functions available in the libraries can change. If the earlier version is missing a library routine that the mex routine compiled with the later version is relying on, your only hope is probably to recompile the mex routine on the older computer.
What versions of MATLAB are being used on the other computers where it works?
3 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!