我正在尝试将Eigen C++ 模板库用于线性代数,我将该库编译并安装到以下路径/usr/local/include
我从他们的网站上获取了一个示例代码,并尝试使用和不使用该-l
选项进行编译。
g++ -l /usr/local/include/eigen3 test.cpp -o mytest
但我收到以下错误:
test.cpp:2:23: fatal error: Eigen/Dense: No such file or directory
我怎样才能包含这个库?
我正在尝试将Eigen C++ 模板库用于线性代数,我将该库编译并安装到以下路径/usr/local/include
我从他们的网站上获取了一个示例代码,并尝试使用和不使用该-l
选项进行编译。
g++ -l /usr/local/include/eigen3 test.cpp -o mytest
但我收到以下错误:
test.cpp:2:23: fatal error: Eigen/Dense: No such file or directory
我怎样才能包含这个库?
您想使用该-I
选项,而不是-l
g++ -I /usr/local/include/eigen3 test.cpp -o mytest
对于 MSVC 用户:我的两分钱具体答案:
我刚刚遇到了一个难以识别的 Eigen 编译错误。这是由此处描述的过程引起的 - 使用 CRT 库查找内存泄漏,其中包括使用以下宏覆盖new
运算符以检测内存泄漏:
#ifdef _DEBUG
#define DBG_NEW new ( _NORMAL_BLOCK , __FILE__ , __LINE__ )
#else
#define DBG_NEW new
#endif
此宏不适用于 Eigen。
一旦我删除它,问题就解决了。
我希望这可以帮助你。