[心得] 使用 VS 2005 編譯的 DLL, MATLAB 無ꨠ…
最近我遇到的問題,用 Visual Studio 2005 (VS 2005)編譯的 DLL (mex)
在沒有安裝 VS 2005 的電腦上,無法被 MATLAB 執行
出現 Invalid MEX-file 錯誤訊息
然後這是找到的 solution:
http://www.mathworks.com/support/solutions/data/1-2223MW.html
簡單地說,你必須讓需要執行的電腦安裝 vcredist_x86.exe 這個檔案
來讓 VS 2005 編譯的 DLL 可以運作
他包含一些基本的 run time library
(a)如果你用 MATLAB 2006a 可以在上面的連結找到這個檔案
或者
(b)如果你有安裝 VS 2005 Pro 可以在下列位置找到這個檔案
...\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages
或者
(c)MS的網站也有提供下載
http://tinyurl.com/8aaz2
這個檔案其實滿大的接近 2.52MB
也就是說你要散佈你的 Mex DLL 必須連這個 檔案一起散佈
這實在是一件很不方便的事情。
這有另一篇只需散佈必要的 run time library 的方法
http://www.codeproject.com/cpp/vcredists_x86.asp
比較複雜,興趣的人可以參考看看。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.115.129.107
※ 編輯: zaguan 來自: 59.115.129.107 (05/31 22:04)
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章