记boost在gcc的一个库链接问题generic_category()

Posted 如风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记boost在gcc的一个库链接问题generic_category()相关的知识,希望对你有一定的参考价值。

报错大致如下:

main.cpp:(.text+0x49): undefined reference to `boost::system::generic_category()‘
main.cpp:(.text+0x53): undefined reference to `boost::system::generic_category()‘
main.cpp:(.text+0x5d): undefined reference to `boost::system::system_category()‘

当时搞了很久,各种库各种一通链接,始终没解决问题

解决方案:

"boost/filesystem.hpp" 这个文件依赖于boost_system,编译的时候,需要 -lboost_system选项,但是你的编译选项里头已经指定该选项,为什么还会出现链接错误呢。我也纳闷了半天,后来发现,原来是-l选项的顺序问题。在g++的man帮助信息里面,我发现了下面的话:

读完这段话,应该就明白出错原因了。所以,解决方案就是用下面的命令来编译:
引用
g++ main.cpp -lboost_system -lboost_filesystem
————————————————
版权声明:本文为CSDN博主「葭五」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yuxiaohen/article/details/9709013

以上是关于记boost在gcc的一个库链接问题generic_category()的主要内容,如果未能解决你的问题,请参考以下文章

boost静态链接的问题 -lgcc_s

找不到 boost 库

markdown 在Windows上为GCC(MinGW)安装boost库

CMake项目Boost库错误:boost/config/compiler/gcc.hpp:165:10:致命错误:cstddef:没有这样的文件或目录

如何在 pkg-config 中使用 C++ Boost 库?

如何使用旧 ABI 编译 GCC 5 的 boost?