找不到lg2c
我正在尝试从一些 cpp 和 fortran 文件为 matlab 创建 mex。它们都编译良好并创建了 .obj 文件。但在链接过程中我收到错误 lg2c not found。
我在 win vista 中安装了 matlab 2007。我还安装了 mingw 和 gnumex。 matlab 中的 mex -setup 返回 2 个编译器 lcc 和 VS 2003
我正在使用 G77 fortran 编译器 按照 http://www.cs.ubc.ca/~pcarbo/Compile_LBFGSB_on_Windows 中的说明进行操作。文本
I'm trying to create mex for matlab from some cpp and fortran files. They all compile well and creates the .obj file. But during linking I get the error lg2c not found.
I have matlab 2007 installed in win vista. I also have mingw and gnumex installed.
The mex -setup in matlab returns 2 compilers lcc and VS 2003
I'm using G77 fortran compiler
Followed instructions in http://www.cs.ubc.ca/~pcarbo/Compile_LBFGSB_on_Windows.txt
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用
g77
编译的 Fortran 程序(由 GCC <= 3.4.6 提供)需要与 libg2c 链接。使用gfortran
编译的 Fortran 程序(由 GCC >= 4.0.0 提供)需要与 libgfortran 链接。无论如何,编译器驱动程序(无论是g77
还是gfortran
)都应该为您做到这一点。现在的问题是:Matlab 提供的文件中是否有对 libg2c 的引用。如果是这样,你别无选择,只能提供 libg2c。您可以在那里找到下载。
Fortran programs compiled with
g77
(as provided by GCC <= 3.4.6) need to link with libg2c. Fortran programs compiled withgfortran
(as provided by GCC >= 4.0.0) need to link with libgfortran. In any case, the compiler driver (whetherg77
orgfortran
) ought to do that for you.Now, the question is: is there a reference to libg2c in the Matlab-provided files. If so, you have no choice but to provide libg2c. You can find a download there.