On 18 October 2017 at 15:58, Mahmood N <nt_mahmood@xxxxxxxxx> wrote: > Hi, > >>Yes, you need to use -lboost_system after -lboost_filesystem, because >>libboost_filesystem depends on libboost_system. > > Still I get the same error. The order change returns the same undefined > error. > > >>Are you sure you're linking to the right libraries that match the >>Boost headers you compiled against? > > I have some experience on that and know some projects need > specific boost version. But here, I tested some other versions, > e. g. 1.42, 1.44, 1.46, 1.54 and all of them returns the same error. > If I get different errors with different versions, then the issue might > be with the version. I didn't ask if you need to use 1.54, I asked if you are compiling against headers that match the libs. >>Use 'nm --demangle >>/home/mahmood/boost_1_54_0/stage/lib/libboost_system.so | fgrep >>category' to inspect the symbols in the library, does it define the >>missing symbols? > > > Yes, it is. Please see Are you sure? I don't see get_system_category or get_generic_category. > mahmood@vb:AES$ nm --demangle > /home/mahmood/boost_1_54_0/stage/lib/libboost_system.so | fgrep > category00000000002030a0 b guard variable for > boost::system::system_category()::system_category_const > 00000000002030b0 b guard variable for > boost::system::generic_category()::generic_category_const > 00000000002030c0 b guard variable for boost::system::(anonymous > namespace)::generic_error_category::message(int) const::unknown_err > 0000000000001420 t boost::system::(anonymous > namespace)::system_error_category::~system_error_category() > 00000000000012f0 t boost::system::(anonymous > namespace)::system_error_category::~system_error_category() > 00000000000012f0 t boost::system::(anonymous > namespace)::system_error_category::~system_error_category() > 0000000000001400 t boost::system::(anonymous > namespace)::generic_error_category::~generic_error_category() > 0000000000001300 t boost::system::(anonymous > namespace)::generic_error_category::~generic_error_category() > 0000000000001300 t boost::system::(anonymous > namespace)::generic_error_category::~generic_error_category() > 0000000000001d20 W boost::system::error_category::~error_category() > 0000000000001ca0 W boost::system::error_category::~error_category() > 0000000000001ca0 W boost::system::error_category::~error_category() > 0000000000001440 T boost::system::system_category() > 00000000000014b0 T boost::system::generic_category() > 00000000002030d0 b boost::system::posix_category > 0000000000001520 t boost::system::(anonymous > namespace)::system_error_category::default_error_condition(int) const > 00000000000012e0 t boost::system::(anonymous > namespace)::system_error_category::name() const > 0000000000001c60 t boost::system::(anonymous > namespace)::system_error_category::message(int) const > 00000000000012d0 t boost::system::(anonymous > namespace)::generic_error_category::name() const > 0000000000001310 t boost::system::(anonymous > namespace)::generic_error_category::message(int) const > 0000000000001d00 W > boost::system::error_category::equivalent(boost::system::error_code const&, > int) const > 0000000000001cc0 W boost::system::error_category::equivalent(int, > boost::system::error_condition const&) const > 0000000000001cb0 W > boost::system::error_category::default_error_condition(int) const > 0000000000202d70 d typeinfo for boost::system::(anonymous > namespace)::system_error_category > 0000000000202d90 d typeinfo for boost::system::(anonymous > namespace)::generic_error_category > 0000000000202db0 V typeinfo for boost::system::error_category > 0000000000001fe0 r typeinfo name for boost::system::(anonymous > namespace)::system_error_category > 0000000000002020 r typeinfo name for boost::system::(anonymous > namespace)::generic_error_category > 0000000000002060 V typeinfo name for boost::system::error_category > 0000000000202cc0 d vtable for boost::system::(anonymous > namespace)::system_error_category > 0000000000202d20 d vtable for boost::system::(anonymous > namespace)::generic_error_category > 0000000000202c60 V vtable for boost::system::error_category > 00000000002030a8 b boost::system::system_category()::system_category_const > 00000000002030b8 b boost::system::generic_category()::generic_category_const > 00000000002030c8 b boost::system::(anonymous > namespace)::generic_error_category::message(int) const::unknown_err > > > > > I am know trying with other gcc version, e. g. 4.5 and 4.4 to see they work. > Does that output shed a light? > > > Regards, > Mahmood > >