我正在尝试使用CMake将Boost.Log
添加到Boost库文件中,但在尝试链接到我的程序时遇到了问题。使用CMake添加Boost.Log来提升库文件
我在Boost.Log
周围添加了一个包装并生成了一个名为libcls_utils.so
的共享库。 Boost库(与Boost.Log
一起)似乎已经生成,并在正确的位置正确生成了所有.so
文件,libcls_utils.so
也是如此。
当我尝试链接到我的文件,我得到以下错误:
/media/data/workspace/mdxdev/tmp/staging/i686-mv-linux/usr/lib/libcls_utils.so: undefined reference to `boost::log_mt_posix::sinks::basic_text_file_backend::construct(boost::filesystem2::basic_path, std::allocator >, boost::filesystem2::path_traits> const&, std::_Ios_Openmode, unsigned long long, boost::function0 const&, bool)
至于我可以告诉大家,我对链接的所有正确的库。有没有人试过这个成功之前?我究竟做错了什么?
我使用CMake 2.8.8,Boost-1.49.0和来自svn trunk的Boost.Log。
你遇到什么烦恼? – Nightfirecat
我已经在Boost.Log中添加了一个包装器,并生成了一个名为libcls_utils.so的共享库。 Boost库(以及Boost.Log)似乎已经构建好,并且能够在正确的位置正确生成所有的.so文件,我的libcls_utils.so也是如此。当我尝试链接我的文件时,我得到: –
/media/data/workspace/mdxdev/tmp/staging/i686-mv-linux/usr/lib/libcls_utils.so:对boost :: log_mt_posix :: sinks的未定义引用:: basic_text_file_backend :: construct(boost :: filesystem2 :: basic_path ,std :: allocator >,boost :: filesystem2 :: path_traits> const&,std :: _ Ios_Openmode ,unsigned long long,boost :: function0 const&,bool)' 据我所知,我正在链接所有正确的库。 –