Windows下MatConvNet編譯 mex setup中vl_compilenn時cl.exe缺失及vl_imreadjpeg出錯遇到問題

使用的環境

Windows 10 + Matlab R2019a + VS2017 + MatConvNet-1.0-beta21 + CPU模式

因爲不需要使用顯卡和CUDA,直接下載安裝包,添加路徑

執行命令

mex -setup C++

addpath matlab

vl_compilenn


錯誤信息如下:

解決辦法

在VS的根目錄下搜cl.exe文件   將其複製到matconvnet文件夾下,再次編譯 

 

又遇到錯誤:

上面的是錯誤信息開頭部分。

上面的是錯誤信息結尾部分。

只看這兩部分感覺摸不着頭腦。不知道SSSE3是什麼鬼,只能看出是編譯vl_imreadjpeg出了問題。

只能去查看中間部分的錯誤信息,發現大多都是warning,導致編譯終止的error只有兩個

 

最後網上搜了各種資料,是文件imread_helpers.hpp的第523行出了問題,說是宏衝突。

解決辦法

給出問題的地方,即std::min加上括號即可,即變成(std::min)即可。如下圖。

重新運行vl_compilenn,編譯全部通過。 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章