我在使用cmake的findboost模块找到boost-log库时遇到问题。
而不是libboost_log-vc120-mt-sgd-1_57(存在于我的boost lib diretory中) cmake搜索:libboost_log-vc120-mt-sd-1_57,但不存在。
我试图在cmake(命令行参数)的调用和我的cmakelists.txt文件中启用Boost_USE_DEBUG_RUNTIME,但它对cmake find搜索的库名称的ABI标记没有影响。
我使用的cmake版本是3.1.0
在他们写的documentation中:
Boost_USE_DEBUG_RUNTIME - 设置为ON或OFF以指定是否使用 链接到MS调试C ++运行时的库 ('g'标签)。 默认为开启。
所以默认情况下它应该搜索libboost_log-vc120-mt-sgd-1_57,同样在这个bug report中,他们引入了Boost_USE_DEBUG_RUNTIME标志,并且知道它应该默认设置为on,以便不破坏以前的行为。
答案 0 :(得分:0)
好的,我找到了一个问题的答案,因为事实证明我的例子中首先缺少2个配置,
将变量MSVC musst设置为true(这会导致ABI标记包含g值)
第二
变量CMAKE_FIND_LIBRARY_SUFFIXES是一个必须设置为值lib dll的列表