cmake工程引入boost库遇到的link error: 对‘boost::system::generic_category’未定义的引用

时间:2025-04-20 19:34:39

cmake工程下引入boost库的时候,提示 “对‘boost::system::generic_category()’未定义的引用”,在网上找了很久的解决方案,大多建议是说要加入-lboost-system编译链接选项,这对于cmake构建的工程项目是不必的。如果你用的是cmake,你只需要添加一句命令:

add_definitions(-DBOOST_ERROR_CODE_HEADER_ONLY)

参考以下论坛链接找到的解决方案:

/a/50146757/12041424

有一句感悟:在so论坛里,你能遇到的几乎所有问题这里都有解决方案,前提是搜索得当,关键词要清晰,并且要仔细看每个解答底下的评论,评论里也有很多真知灼见。我遇到的这个问题,找了很久的答案,高赞的解决方案分散了我的注意力,那其实不适合解决我的问题,以至于忽略了底下更贴合我的自身情况的答案。绕了半天又回到so网站去检索,才终于看到真的适合我的工程的解决方案。