链接到Boost系统的错误

Errors linking to Boost system

本文关键字:错误 系统 Boost 链接      更新时间:2023-10-16

我已经为MinGW 4.9.2 32位构建了Boost 1.59:

  1. bootstrap.bat mingw
  2. b2 --prefix=%USERPROFILE%CodeLibrariesboost toolset=gcc install(这些是静态库)

尝试编译时:

#include <iostream>
#include <boost/asio.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
using namespace std;
int main()
{
    boost::asio::io_service io;
    boost::asio::deadline_timer t(io, boost::posix_time::seconds(5));
    t.wait();
    cout << "Hello World!" << endl;
    return 0;
}

:

g++ -o test -L %USERPROFILE%CodeLibrariesboostlib -l boost_system-mgw49-mt-1_59 -I %USERPROFILE%CodeLibrariesboostincludeboost-1_59 main.cpp

我得到这个错误:

C:UsersBradyAppDataLocalTempccsbGjrk.o:main.cpp:(.text+0x193): undefined reference to `boost::system::generic_category()'
C:UsersBradyAppDataLocalTempccsbGjrk.o:main.cpp:(.text+0x19d): undefined reference to `boost::system::generic_category()'
C:UsersBradyAppDataLocalTempccsbGjrk.o:main.cpp:(.text+0x1a7): undefined reference to `boost::system::system_category()'
C:/Program Files (x86)/QT/Tools/mingw492_32/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../i686-w64-mingw32/bin/ld.exe: C:UsersBradyAppDataLocalTempccsbGjrk.o: bad reloc address 0xe in section `.text$_ZN5boost6system14error_categoryD2Ev[__ZN5boost6system14error_categoryD2Ev]'
collect2.exe: error: ld returned 1 exit status

我在两台计算机上得到相同的错误。任何帮助都是感激的!

链接错误。你需要链接到Boost System库。

这样做

g++ -o test -L %USERPROFILE%CodeLibrariesboostlib -lboost_system -I %USERPROFILE%CodeLibrariesboostincludeboost-1_59 main.cpp

相关文章: