2010-11-27 123 views
1

我使用Windows XP和matlab版本是7.10.0。 我從http://www.ics.forth.gr/~lourakis/levmar/levmar-2.5.tgz如何使用MATLAB構建levmar?

自述文件中levmar(列文伯格馬夸特)包,我們被告知使用MEX使用下面的命令在MATLAB編譯: MEX -DHAVE_LAPACK -I .. -O -L - L levmar.c -llevmar -lclapack -lblas -lf2c。

我下載lapack.libblas.lib和Windows

UPDATEf2c.lib: 原來的錯誤得到了解決我建在包賦予了VC項目文件後, 。 但現在有喜歡的一些錯誤消息:

levmar.lib(misc.obj) : error LNK2019: unresolved external symbol _dgemm_ referenced in function _dlevmar_trans_mat_mat_mult 
+0

您需要將庫鏈接到項目。只是谷歌'錯誤LNK2019:無法解析的外部符號'。 – zellus 2010-11-27 09:04:24

回答

1

你創建一個MEX-功能網關文件?你不能只爲Matlab編譯一個c函數;你需要做一些工作來處理Matlab和c代碼之間的I/O。

如果您按照this document中列出的步驟操作,應該可以。

+0

感謝有關mex文件的鏈接 – 2010-11-27 05:31:11

0

我只是在搜索了一段時間後發現它並注意到levmar包中包含了一個我需要構建的vc項目文件,並且它創建了一個名爲levmar.lib的文件。 但現在我收到一些錯誤,其中涉及'無法解析外部符號'

1

您可能會看看immoptibox,其中還包括Levenberg-Marquardt算法。

+0

我可能會考慮在不久的將來替代.. – 2010-11-27 08:35:12