1. 通过 apt 安装
sudo apt install libeigen3-dev
- 目前的版本为:
3.2.92
- 默认安装目录:
/usr/include/eigen3
- 同时会生成 .pc 文件:
/usr/share/pkgconfig/eigen3.pc
可以通过 pkg-config
命令查看版本(pkg-config
通过查看 .pc
文件来查询库的信息):
pkg-config --modversion eigen3
2. 手动安装不同版本
- 去官网下载所需版本源码:Releases · libeigen / eigen
- 编译安装
cd eigen
mkdir build && cd build
cmake ..
sudo make install
- 默认安装目录:
/usr/local/include/eigen3
- 同时会生成
.pc
文件:/usr/local/share/pkgconfig/eigen3.pc
3. 关于 pkg-config
通过 apt 安装和手动安装都会生成 eigen3.pc
文件,pkg-config
会优先查找哪一个呢?
这涉及到 pkg-config 搜索路径的顺序问题,通过下述命令可以进行查询默认的搜索路径:
pkg-config --variable pc_path pkg-config
输出结果:
可见 /usr/local/share/pkgconfig
比 /usr/share/pkgconfig
靠前,当 pkg-config 找到一个 eigen3.pc 文件后,就不会继续查找了。
当然还可以通过环境变量 PKG_CONFIG_PATH 来自定义搜索路径,如果在上述默认查找路径中没有找到相应的 .pc 文件,就会继续在自定义路径中查找。
可参考之前的博客:
丁洪凯:Ubuntu 16.04 OpenCV 源码安装、自定义环境变量 PKG_CONFIG_PATHzhuanlan.zhihu.com