我根本不想每次我需要一个库时都设置一个环境变量,让孤独的搜索路径根本没有标准化(至少在Windows上)。通常,Find * .cmake不会在Windows上指定任何具有关联的位置。
有什么方法可以使CMake搜索指定目录(强制配置错误的Find * .cmake搜索否则将不会在系统级别设置的路径)?说我希望它在Windows上的“ C:\”上搜索还是仅在“ /”上搜索?这样,我可以将所有库都放在“ C:\”中。
小智 6
您可以尝试在项目CMakeLists.txt 中将路径追加到CMAKE_PREFIX_PATH,如下所示:
list(APPEND CMAKE_PREFIX_PATH "/tmp/test" "/another/library/path")
Run Code Online (Sandbox Code Playgroud)
根据文档,它将在列表中每个路径的末尾附加“ / lib”并在其中搜索库,但是经过一些快速测试,如果cmake直接位于您指定的路径中,似乎可以找到一切。例如,如果我有/tmp/test/libtest.so并添加上面的行,则可以这样找到它:
find_library(libtest_LIBRARY test)
Run Code Online (Sandbox Code Playgroud)
运行cmake应该libtest_LIBRARY使用正确的路径设置缓存变量。
| 归档时间: |
|
| 查看次数: |
8386 次 |
| 最近记录: |