C++ 未定义对boost的引用

C++ 未定义对boost的引用,c++,boost,C++,Boost,我得到以下错误 In function `__static_initialization_and_destruction_0': /usr/include/boost/system/error_code.hpp:208: undefined reference to `boost::system::get_system_category()' /usr/include/boost/system/error_code.hpp:209: undefined reference to `boost

我得到以下错误

In function `__static_initialization_and_destruction_0':
/usr/include/boost/system/error_code.hpp:208: undefined reference to   `boost::system::get_system_category()'
/usr/include/boost/system/error_code.hpp:209: undefined reference to `boost::system::get_generic_category()'
我正在使用makefile进行编译

foo: foo.o xyz/libxyz.a
    g++ -g -o foo foo.o xyz/libxyz.a -ljpeg -ltiff

foo.o: foo.cpp
    g++ -I/usr/include/ -g -Ixyz -c foo.cpp -lboost_system -lboost_filesystem
在代码中,我包括如下内容

#include <boost/dynamic_bitset.hpp>
#包括
我如何解决这个问题? 任何帮助都将不胜感激


谢谢。

将链接选项移动到执行链接的
g++-o
命令。编译时不需要
-l
,链接时需要它们

foo: foo.o xyz/libxyz.a
    g++ -g -o foo foo.o xyz/libxyz.a -ljpeg -ltiff -lboost_system -lboost_filesystem

foo.o: foo.cpp
    g++ -I/usr/include/ -g -Ixyz -c foo.cpp