为什么cmake选错了库
why cmake pick the wrong library?
我的cmake中有这一行来选择glog库:
find_library(GLOG_LIBRARY libglog $ENV{GLOG_DIR}/x64/Release)
message(${GLOG_LIBRARY})
在发布文件夹中,我有以下文件:
03/03/2015 15:00 308,736 libglog.dll
03/03/2015 15:00 64,998 libglog.exp
03/03/2015 15:00 104,884 libglog.lib
03/03/2015 15:00 3,248,128 libglog.pdb
但是当我运行cmake时,我可以看到GLOG_LIBRARY被设置为libglog_static.lib
为什么cmake得到错误的库?
好的,所以问题是,使用提示的代码中的更改很可能是在第一次执行脚本之后进行的。默认情况下,CMake缓存其标准函数的大多数值。
默认情况下,find
例程首先检查变量是否存在于缓存中,因此即使您更改代码,它也可能看起来不起作用。在尝试新版本之前,确实需要手动清除缓存,或者如果以某种方式更改了配置(例如,使用了一些更改版本或更改解析过程的标志),如果变量的名称相同,则会从缓存中提取。
文档中描述了搜索过程和参数:http://www.cmake.org/cmake/help/v3.0/command/find_library.html
相关文章:
- #定义c-预处理器常量..我做错了什么
- 努力将整数转换为链表。不知道我在这里做错了什么
- 首要问题的答案让值班员搞错了
- 看起来is_nothrow_constructible_v()在MSVC中被破坏了,我错了吗
- .h 和.cpp文件分离时出错,但仅使用 .h 文件时没有错误.我做错了什么?
- 我的C++线程做错了什么?
- 如何正确使用 >=?(a+f()+c)>=0 错了吗?
- 谁能告诉我我用 getline 做错了什么 (cpp) 格式
- 没有输出的合并排序我做错了什么?
- 我正在尝试使用 while 循环从字符串中删除字母,直到没有字母。我在这里做错了什么?
- 在C++中使用 AKS 素数测试计算双胞胎素数 我做错了什么?
- 指针相关的UE4崩溃.我的指针哪里错了?
- 我一直试图弄清楚我在这个链表程序中做错了什么
- 我正在尝试学习如何在 c++ 中传递指针,但出现错误:没有用于调用"test"的匹配函数。我做错了什么?
- FFMPEG,C++,内存泄漏,我做错了什么?
- 我做错了什么?反向字符串 C++
- 我在这个课上做错了什么?
- 为什么cmake找错了库
- 为什么cmake选错了库
- 使用CMake为Qt Creator设置ITK库,我做错了什么