目标:无需编辑CMakeLists.txt文件即可设置Cmake路径。
在Linux中,在Cmake中使用find_library()
足以找到使用apt安装的库。
在Windows中,Cmake无法自动找到它。
注意:请将sqlite3视为任何库。
什么是正确的方法来设置cmake搜索我的库文件而无需而不必编辑CMakeList的库路径?
注意:我已将samlib编译为静态库文件,并放置在项目本身以外的某个目录中。
我已经在Linux和Windows上尝试了以下方法。
cmake_minimum_required(VERSION 3.0.0)
project(SampleProj VERSION 0.1.0)
find_library(samlib NAMES samplelib)
add_executable(SampleProj src/main.cpp)
target_link_libraries(SampleProj ${samlib})```
答案 0 :(得分:1)
尝试使用CMAKE_LIBRARY_PATH
用分号分隔的目录列表,为find_library()命令指定搜索路径。默认情况下为空,旨在由项目设置。另请参阅CMAKE_SYSTEM_LIBRARY_PATH和CMAKE_PREFIX_PATH。
src:https://cmake.org/cmake/help/latest/variable/CMAKE_LIBRARY_PATH.html
set CMAKE_GENERATOR=Visual Studio 15 2017 Win64
cmake -H. -Bbuild -G "%CMAKE_GENERATOR%" "-DCMAKE_PREFIX_PATH=path_to_samlib"