boost-problem



  • Ich habe einen Quellcode von Highscore.de über Boost::Asio heruntergeladen und wollte ihn gerade mal ausprobieren, hier erst mal der Quellcode:

    #include <boost/asio.hpp>
    #include <boost/thread.hpp>
    #include <iostream>
    
    void handler1(const boost::system::error_code &ec)
    {
      std::cout << "5 s." << std::endl;
    }
    
    void handler2(const boost::system::error_code &ec)
    {
      std::cout << "5 s." << std::endl;
    }
    
    boost::asio::io_service io_service;
    
    void run()
    {
      io_service.run();
    }
    
    int main()
    {
      boost::asio::deadline_timer timer1(io_service, boost::posix_time::seconds(5));
      timer1.async_wait(handler1);
      boost::asio::deadline_timer timer2(io_service, boost::posix_time::seconds(5));
      timer2.async_wait(handler2);
      boost::thread thread1(run);
      boost::thread thread2(run);
      thread1.join();
      thread2.join();
    }
    

    und hier die Fehlermeldungen:
    [quote]
    obj/Debug/main.o||In function \_\_static\_initialization\_and\_destruction_0':| /usr/include/boost/system/error\_code.hpp|205|undefined reference toboost::system::get_system_category()'|
    /usr/include/boost/system/error_code.hpp|206|undefined reference to boost::system::get\_generic_category()'| /usr/include/boost/system/error\_code.hpp|211|undefined reference toboost::system::get_generic_category()'|
    /usr/include/boost/system/error_code.hpp|212|undefined reference to boost::system::get\_generic_category()'| /usr/include/boost/system/error\_code.hpp|213|undefined reference toboost::system::get_system_category()'|
    obj/Debug/main.o||In function boost::asio::error::get\_system\_category()':| /usr/include/boost/asio/error.hpp|218|undefined reference toboost::system::get_system_category()'|
    obj/Debug/main.o||In function error_code':| /usr/include/boost/system/error\_code.hpp|312|undefined reference toboost::system::get_system_category()'|
    ||=== Build finished: 7 errors, 0 warnings ===|
    [/code]
    für mich stellen Fehlermeldungen immer noch ein gewaltiges Problem dar, da ich sie nicht interpretieren kann,
    was möchte mir Code::Blocks mitteilen?

    achja: folgende LinkerOptions habe ich zusätzlich eingefügt:
    /usr/lib/libboost_thread-mt.a
    /usr/lib/libboost_thread-mt.so

    danke für jede Hilfe



  • Du musst auch gegen die Boost.System linken. Im übrigen findest Du hier die Abhängigkeiten von Boost.Asio.

    Gut Schuß
    VuuRWerK 😉



  • ic dachte bei einer installation unter ubuntu wäre thread das einzige, das ich zusätzlich einbinden müsste?



  • Sagt wer? Wenn Du etwas kompilierst und linkst musst Du immer gegen die erforderlichen libs linken, da hat auch Ubuntu keine Sonderstellung.

    Gut Schuß
    VuuRWerK 😉


Anmelden zum Antworten