首先你要先使用brew安裝過Eigen3 。 然后你在使用這個庫的時候链沼,你會天真的以為在CMakeLists中這樣寫:
find_package(Eigen3 REQUIRED)
include_directories(${Eigen3_INCLUDE_DIRS})
然后你在你的CPP文件中也能#include <eigen3/Eigen/Eigen> 秉溉,寬且也能提示到窿侈。但是編譯就報錯了
fatal error: 'eigen3/Eigen/Core' file not found
此時,你會看看你的 /usr/local/include/eigen3目錄墓猎,一切都正常呀胡诗?其實這個是因為在Mac上 /usr 目錄下面沒有include 目錄邓线,include目錄放在了local目錄下面了淌友。可能是cmake找不到吧骇陈,我猜的震庭。
因此你的CMakeLists就不能那么寫了,因該把上面的常規(guī)寫法注釋掉你雌,或者刪除掉器联,改用下面的寫法
include_directories("/usr/local/include/eigen3/")
直接這樣寫,簡單粗暴婿崭。然后在你的C++文件中直接這樣引用
#include <Eigen/Core>
#include <unsupported/Eigen/FFT>
然后你就可以愉快的使用Eigen了拨拓。