2017-01-05 86 views
0

我試圖從由Manolis Lourakis(Available here))在C編寫的Levenberg-Marquardt算法中構建一個mex文件。我做了很多搜索,但一直沒有找到類似的問題或解決方案,但(從這個論壇很多!)。爲Levenberg-Marquardt算法構建Mex時出錯 - 說存在的目錄不存在

作者包含一個C網關函數,我已經設法解決了我從makefile中得到的錯誤。現在,當我嘗試建立makefile文件,我看到下面的錯誤:

/var/folders/w6/c4f9x2qn7zb2srs97ngpvflh0000gn/T//mex_112796979375_74657: 

line 2: -L/Applications/MATLAB_R2016b.app/bin/maci64: No such file or directory 

Error using mex The command '/usr/bin/xcrun' exited with a return value '0' 

這似乎是說,/Applications/MATLAB_R2016b.app/bin/maci64,是不是到目錄「maci64」的路徑。這很奇怪,因爲當你沿着路徑走時,這個目錄肯定是存在的。我用來構建文件中的代碼作爲自述文件中指示:

mex -DHAVE_LAPACK -I.. -O -L</Users/martinmackinnon/Documents/MATLAB/levmar-2.6/levvy> levmar.c -llevmar -lclapack -lblas -lf2c 

凡與選項L的路徑,就是將所有的文件只是路徑包含在所提供的「levmar」庫作者。

我的操作系統是mac OS 10.12.1,MATLAB版本是MATLAB_R2016b。

我也嘗試過在OS X 10.11.6和MATLAB_R2015b上運行的系統,但得到相同的錯誤。

任何幫助將不勝感激。

非常感謝。

+1

您可以參考'/ Applications/MATLAB_R2016b.app/bin/maci64'作爲「文件」。它真的是一個文件,還是一個目錄?如果它是一個文件,那可能是你的問題:'-L'標誌用於目錄。 – jez

+0

我誤寫了,道歉。它實際上是一個目錄。 –

+0

請注意,閱讀包含'.... maci64',不是文件'maci64'的路徑''作爲目錄'maci64'的路徑' –

回答

0

對於將來有同樣問題的人。這裏的問題是在-L選項的目錄路徑中使用<和>。

相關問題