我在Linux上使用CMake和boost库开发的应用程序(openSUSE-Leap-42.2)在链接时需要libboost_log-mt.so(1.62)。但问题是,即使我使用b2工具使用相关的开关,CMake也无法在我的lib目录中找到这个库(带-mt后缀)。
$ ./b2 link=static,shared threading=single,multi
在搜索了一段时间之后,我发现已删除了boost库的-mt后缀,并且所有创建的库都是线程安全的(check here),我的问题可以通过一个简单的软链接修复非mt库。我创建了链接,一切正常。
现在的问题是,正式删除了-mt版本的boost库吗?如果是的话,为什么cmake会尝试将它们链接到我的二进制文件呢?