在eclipse中lapack undefined reference

时间:2014-05-12 16:46:00

标签: c++ eclipse g++ lapack

我是lapack的新手,需要一些帮助。我做了一些搜索,希望这是寻求帮助的合适场所。我试着

    #include <iostream>
    using namespace std;
    #include "C:\work\library\Eclipse_WinGW_Lapack\lapack-3.5.0\lapacke\include\lapacke.h"

你可以看到,我已经包含了lib和dll。然而,当我构建它时,这就是我在控制台中得到的:

g++ "-LC:\\work\\library\\Eclipse_WinGW_Lapack\\lapack-3.5.0\\lapacke\\lib" "-LC:\\work\\library\\Eclipse_WinGW_Lapack\\..\\lapack-3.5.0\\lapacke\\lib" -o Eclipse_WinGW_Lapack.exe "src\\Eclipse_WinGW_Lapack.o" -lliblapacke 
src\Eclipse_WinGW_Lapack.o: In function `Z22testLAPACK_LeastSquarev':
C:\work\library\Eclipse_WinGW_Lapack\Eclipse_WinGW_Lapack\Debug/../src/Eclipse_WinGW_Lapack.cpp:72: undefined reference to `LAPACKE_dgels'

但lapacke.h中肯定存在LAPACKE_dgels声明。

1 个答案:

答案 0 :(得分:0)

现在可能是打开project properties的最佳时机!首先右键单击项目名称。 properties上的Clic。将打开一个包含项目属性的窗口。

在左侧的c/c++ Build下点击settings。您有很多标签(Tool SettingsBuild StepsBuild ArtifactBinary ParsersError Parsers

Tool Settings

上的Clic

这里重要的是:

    GCC C Compiler, Directories
  • 你在包含路径中有C:\work\library\Eclipse_WinGW_Lapack\lapack-3.5.0\lapacke\include这样的东西吗?你需要它告诉g ++ lapacke.h的路径,以及lapacke的其他.h的路径
  • MinGW C Linker, Libraries中,lapack下有lapackeLibraries (-l)吗?您可能还需要在Library search path -L中添加一些内容,以告诉链接器liblapack.a和`liblapacke.a在哪里。

我希望这几句话对你有帮助,不过我很确定你已经知道了......

再见,