【发布时间】:2019-02-12 18:44:11
【问题描述】:
我有 Criterion 框架 (https://github.com/Snaipe/Criterion),我想从源代码构建它并安装到特定目录,因此标准的标头应位于 /usr/include/
和库 libcriterion.so 在 /usr/lib64 文件夹 我使用这个命令来构建和安装:
mkdir build
cd build
cmake ..
cmake --build .
make install
它将 .so 文件安装到 /usr/local/ 文件夹,bash 命令 find / -name "*criterion*" 显示:
/usr/local/lib/libcriterion.so
/usr/local/lib/libcriterion.so.3
/usr/local/lib/libcriterion.so.3.1.0
/usr/local/share/pkgconfig/criterion.pc
/usr/local/include/criterion
/usr/local/include/criterion/criterion.h
如何修复我的命令,以便在安装后 libcriterion.so 位于 /usr/lib64 目录中?
【问题讨论】:
-
若要选择另一个安装前缀,请将
-DCMAKE_INSTALL_PREFIX=/usr选项传递给cmake。请注意,您不能将库安装子目录lib/更改为lib64/,因为lib已硬编码到项目中。 -
为什么你想安装到
/usr/include而不是/usr/local/include?前者应该保留给几乎所有系统上的系统包含文件。
标签: makefile cmake installation