Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[boost] Problem z skompilowaniem prostego przykładu boost::signal

Ostatnio zmodyfikowano 2011-12-04 15:35
Autor Wiadomość
qba10
Temat założony przez niniejszego użytkownika
[boost] Problem z skompilowaniem prostego przykładu boost::signal
» 2011-12-04 13:33:35
Jak w temacie, nie mogę skompilować pod linuxem tego kodu:
C/C++
#include <boost/signal.hpp>
#include <iostream>

void func1()
{
    std::cout << "Hello" << std::flush;
}

void func2()
{
    std::cout << ", world!" << std::endl;
}

int main()
{
    boost::signal < void() > s;
    s.connect( 1, func2 );
    s.connect( 0, func1 );
    s();
}

Kompilator wypluwa coś takiego

Invoking: GCC C++ Linker
g++  -o"szkola4"  ./src/szkola4.o  
./src/szkola4.o: In function `main':
/home/qba/cpp/szkola4/Debug/../src/szkola4.cpp:17: undefined reference to `boost::signals::connection::~connection()'
/home/qba/cpp/szkola4/Debug/../src/szkola4.cpp:18: undefined reference to `boost::signals::connection::~connection()'
./src/szkola4.o: In function `~signal0':
/usr/include/boost/signals/signal_template.hpp:139: undefined reference to `boost::signals::trackable::~trackable()'
/usr/include/boost/signals/signal_template.hpp:139: undefined reference to `boost::signals::detail::signal_base::~signal_base()'
/usr/include/boost/signals/signal_template.hpp:139: undefined reference to `boost::signals::detail::signal_base::~signal_base()'
./src/szkola4.o: In function `slot<void()>':
/usr/include/boost/signals/slot.hpp:124: undefined reference to `boost::signals::detail::slot_base::create_connection()'
./src/szkola4.o: In function `boost::signal0<void, boost::last_value<void>, int, std::less<int>, boost::function<void ()> >::connect(int const&, boost::slot<boost::function<void ()> > const&, boost::signals::connect_position)':
/usr/include/boost/signals/signal_template.hpp:314: undefined reference to `boost::signals::detail::signal_base_impl::connect_slot(boost::any const&, boost::signals::detail::stored_group const&, boost::shared_ptr<boost::signals::detail::slot_base::data_t>, boost::signals::connect_position)'
./src/szkola4.o: In function `boost::signal0<void, boost::last_value<void>, int, std::less<int>, boost::function<void ()> >::operator()()':
/usr/include/boost/signals/signal_template.hpp:337: undefined reference to `boost::signals::detail::call_notification::call_notification(boost::shared_ptr<boost::signals::detail::signal_base_impl> const&)'
/usr/include/boost/signals/signal_template.hpp:354: undefined reference to `boost::signals::detail::named_slot_map::end()'
/usr/include/boost/signals/signal_template.hpp:354: undefined reference to `boost::signals::detail::named_slot_map::end()'
/usr/include/boost/signals/signal_template.hpp:354: undefined reference to `boost::signals::detail::named_slot_map::end()'
/usr/include/boost/signals/signal_template.hpp:354: undefined reference to `boost::signals::detail::named_slot_map::begin()'
/usr/include/boost/signals/signal_template.hpp:337: undefined reference to `boost::signals::detail::call_notification::~call_notification()'
/usr/include/boost/signals/signal_template.hpp:337: undefined reference to `boost::signals::detail::call_notification::~call_notification()'
./src/szkola4.o: In function `signal0':
/usr/include/boost/signals/signal_template.hpp:197: undefined reference to `boost::signals::detail::signal_base::signal_base(boost::function2<bool, boost::signals::detail::stored_group, boost::signals::detail::stored_group> const&, boost::any const&)'
/usr/include/boost/signals/signal_template.hpp:197: undefined reference to `boost::signals::detail::signal_base::~signal_base()'
./src/szkola4.o: In function `~data_t':
/usr/include/boost/signals/slot.hpp:32: undefined reference to `boost::signals::connection::~connection()'
collect2: ld returned 1 exit status
make: *** [szkola4] Błąd 1

P-45123
malan
» 2011-12-04 13:35:03
Linkowałeś coś w ogóle?
P-45124
qba10
Temat założony przez niniejszego użytkownika
» 2011-12-04 13:37:02
nie
P-45125
m4tx
» 2011-12-04 13:53:34
To podlinkuj...
P-45126
qba10
Temat założony przez niniejszego użytkownika
» 2011-12-04 14:15:20
Dodaje w eclipse do projektu -llboost_signals ale wywala mi /usr/bin/ld: cannot find -llboost_signals
P-45128
npHard
» 2011-12-04 15:32:20
Dodaje w eclipse do projektu -llboost_signals ale wywala mi /usr/bin/ld: cannot find -llboost_signals
» Ostatnio zmodyfikowano dzisiaj: 1h » 9 min temu

A nie przypadkiem -lboost_signals przez jedno 'l'?
P-45137
qba10
Temat założony przez niniejszego użytkownika
» 2011-12-04 15:35:11
a faktycznie :)
P-45138
« 1 »
  Strona 1 z 1