G ++找不到boost库。 我说他们很明显

我正在尝试构build一些代码。 这是我得到的错误:

main.o: In function `__static_initialization_and_destruction_0': /home/jmbeck/Downloads/boost_1_48_0/boost/system/error_code.hpp:214: undefined reference to `boost::system::generic_category()' 

还有更多,但我不认为这是相关的。

这是build立命令:

 g++ -I/home/jmbeck/Downloads/boost_1_48_0 -L/home/jmbeck/Downloads/boost_1_48_0/stage/lib -lm -lboost_system -lboost_thread -lboost_regex main.cpp 

/ home / jmbeck / Downloads / boost_1_48_0 / stage / lib目录包含预期的文件:

 libboost_system.a libboost_system.so@ libboost_system.so.1.48.0* libboost_thread.a libboost_thread.so@ libboost_thread.so.1.48.0* libboost_regex.a libboost_regex.so@ libboost_regex.so.1.48.0* ... etc... 

我试过build立一个不使用预编译库的快速程序,编译得很好。 它find适当的标题,但不是库。

我究竟做错了什么?

Solutions Collecting From Web of "G ++找不到boost库。 我说他们很明显"

尝试 main.cpp 之后放置这些库。

我以前经历过一些奇怪的事情,当GCC忽略了库,因为它不认为它们被使用,在到达我的源文件之前。

通常连接器要求图书馆是最依赖于最不依赖的(我相信MS不)。 在这种情况下,可能线程或正则表达式依赖于系统,所以你需要在依赖于它的另一个boost库之后列出-lsystem