在使用qt编译网上下载的代码的时候,出现:
CMake Error at CMakeLists.txt:11 (message):
EIGEN3 not found.
可能是因为我在期间安装了多个不同版本的eigen,且没有卸载干净之类的问题吧,所依即使我尝试:
1、怀疑没安装eigen
sudo apt-get libeigen3-dev
sudo updatedb
locate eigen3
2、怀疑默认安装路径不对
sudo ln -s /usr/include/eigen3/Eigen /usr/include/Eigen #方法1
sudo cp -r /usr/include/eigen3/Eigen /usr/include/Eigen #方法2
均无法解决。
然后最终通过如下方式解决:
根目录下:
sudo find -name eigen3
返回
find: ‘./run/user/1000/gvfs’: 权限不够
./home/mima123/eigen-3.2.0/bench/btl/libs/eigen3
./home/mima123/201/gcc-aarch64-linux-gnu/aarch64-linux-gnu/include/eigen3
./usr/include/eigen3
./usr/local/share/eigen3
./usr/local/include/eigen3
./usr/lib/cmake/eigen3
我查看./usr/include/eigen3目录下,完完整整的eigen3文件,
于是修改CMakeLists.txt
注释掉查找函数,将其改为手动设置:
# 查找 Eigen3
#find_package(Eigen3 REQUIRED)
#if((Eigen3_FOUND) AND (DEFINED EIGEN3_INCLUDE_DIR))
# message(STATUS "Found Eigen3: " ${EIGEN3_INCLUDE_DIR})
# INCLUDE_DIRECTORIES(${EIGEN3_INCLUDE_DIR})
#else()
# message(FATAL_ERROR "EIGEN3 not found.")
#endif()
将其改为
SET( EIGEN3_INCLUDE_DIR "/usr/include/Eigen")
INCLUDE_DIRECTORIES("/usr/include/Eigen")
执行cmake 即可:
CMake Project parsing failed.
Starting to parse CMake project.
Configuring done
Generating done
CMake Project was parsed successfully.