1、搜索路径
cmake 在 find_path 和 find_library 时,会搜索一些默认的路径。当我们将一些lib安装在非默认搜索路径时,cmake就没法搜索到了。这是我们需要添加路径。方法如下:
set(CMAKE_INCLUDE_PATH "include_path")
set(CMAKE_LIBRARY_PATH "lib_path")
2、CMake中rpath的使用
默认RPATH设置
set(CMAKE_SKIP_BUILD_RPATH FALSE) # 编译时加上RPATH
set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) # 编译时RPATH不使用安装的RPATH
set(CMAKE_INSTALL_RPATH "") # 安装RPATH为空
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE) # 安装的执行文件不加上RPATH
两条命令:
SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
SET(CMAKE_INSTALL_RPATH "\${ORIGIN}/../lib")
3、生成类型
# Binary Executables
add_executable(mytool mytool.cpp)
# Binary Library Types
add_library(archive SHARED archive.cpp zip.cpp lzma.cpp)
add_library(archive STATIC archive.cpp zip.cpp lzma.cpp)