2011-04-14 6 views
0

Я пытаюсь использовать boost.asio для реализации отправителя многоадресной рассылки. У меня есть реализация моего потока, и мне нужен мой boost.asio только для управления сокетом.как использовать Boost.asio для отправителя многоадресной рассылки?

Я посмотрел пример на сайте повышения, но я не понял, и я не Скомпилировать. Где я могу найти то, что мне нужно?

В complile ошибки: (я попробовал этот пример: http://www.boost.org/doc/libs/1_46_1/doc/html/boost_asio/example/multicast/sender.cpp)

Error 3 error C2653: 'asio' : is not a class or namespace name c:\Documents and Settings\GG\Desktop\sender.cpp 2

Error 4 error C2653: 'asio' : is not a class or namespace name c:\Documents and Settings\GG\Desktop\sender.cpp 24

Error 5 error C2143: syntax error : missing ')' before '&' c:\Documents and Settings\GG\Desktop\sender.cpp 24

Error 6 error C2143: syntax error : missing ';' before '&' c:\Documents and Settings\GG\Desktop\sender.cpp 24

Error 7 error C2460: 'sender::io_service' : uses 'sender', which is being defined c:\Documents and Settings\GG\Desktop\sender.cpp 24

Error 8 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\Documents and Settings\GG\Desktop\sender.cpp 24

Error 9 error C2653: 'asio' : is not a class or namespace name c:\Documents and Settings\GG\Desktop\sender.cpp 24

Error 10 error C2143: syntax error : missing ';' before '&' c:\Documents and Settings\GG\Desktop\sender.cpp 24

Error 11 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\Documents and Settings\GG\Desktop\sender.cpp 24

Error 13 error C2059: syntax error : ')' c:\Documents and Settings\GG\Desktop\sender.cpp 24

Error 14 error C2065: 'multicast_address' : undeclared identifier c:\Documents and Settings\GG\Desktop\sender.cpp 26

Error 15 error C3861: 'endpoint_': identifier not found c:\Documents and Settings\GG\Desktop\sender.cpp 26

Error 16 error C2531: 'sender::multicast_address' : reference to a bit field illegal c:\Documents and Settings\GG\Desktop\sender.cpp 26

Error 17 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\Documents and Settings\GG\Desktop\sender.cpp 26

Error 18 error C2327: 'sender::io_service' : is not a type name, static, or enumerator c:\Documents and Settings\GG\Desktop\sender.cpp 27

Error 19 error C2061: syntax error : identifier 'io_service' c:\Documents and Settings\GG\Desktop\sender.cpp 27

Error 20 error C2059: syntax error : ')' c:\Documents and Settings\GG\Desktop\sender.cpp 27

Error 21 error C2061: syntax error : identifier 'timer_' c:\Documents and Settings\GG\Desktop\sender.cpp 28

Error 22 error C2143: syntax error : missing ')' before '{' c:\Documents and Settings\GG\Desktop\sender.cpp 30

Error 23 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\Documents and Settings\GG\Desktop\sender.cpp 30

Error 24 error C2143: syntax error : missing ';' before '{' c:\Documents and Settings\GG\Desktop\sender.cpp 39

Error 25 error C2334: unexpected token(s) preceding '{'; skipping apparent function body c:\Documents and Settings\GG\Desktop\sender.cpp 39

Error 26 fatal error C1004: unexpected end-of-file found c:\Documents and Settings\GG\Desktop\sender.cpp 100

+1

Почему вы не смогли скомпилировать его? Какие сообщения об ошибках вы получили? –

+0

я должен попытаться скомпилировать sender.cpp (многоадресного) у меня есть эта ошибка: Ошибка \t \t 1 фатальная ошибка C1083: не удается открыть файл включать: «asio.hpp»: Нет такого файла или каталога \t если я изменить включаемые ти: #include <подталкивание/asio.hpp> у меня есть 23 ошибка: ошибка ошибка C2653: 'ASIO': это не класс или пространство имен имя \t C: \ Documents и Settings \ Gianluigi \ Desktop \ sender.cpp Ошибка err или C2653: 'asio': не является именем класса или пространства имен \t c: \ Documents and Settings \ Gianluigi \ Desktop \ sender.cpp и т. д. – Safari

+1

Вы должны опубликовать весь код примера. Вы скопировали весь файл? http://www.boost.org/doc/libs/1_46_1/doc/html/boost_asio/example/multicast/sender.cpp – Ralf

ответ

0

example вы выбрали для компиляции должны построить чисто если у вас есть установленный импульс правильно. Я не знаю, как настраивается среда разработки. В моей системе у меня есть boost, установленный в /opt/local, поэтому заголовки находятся в /opt/local/include, а библиотеки для ссылок - /opt/local/lib. Компиляция и ссылку линия выглядит

stackoverflow samm$ g++ sender.cpp -I /opt/local/include/ -L/opt/local/lib -lboost_system -Wl,-rpath,/opt/local/lib 

Первая ошибка, которую вы видите

Error 3 error C2653: 'asio' : is not a class or namespace name c:\Documents and Settings\GG\Desktop\sender.cpp 2

выглядит, как вы забыли #include <boost/asio.hpp> где-то. Но я далек от эксперта по разработке Windows, поэтому, возможно, кто-то более осведомленный ответит.

Смежные вопросы