Форум программистов, компьютерный форум, киберфорум
Наши страницы
Boost C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
koka3000
11 / 11 / 5
Регистрация: 02.02.2011
Сообщений: 211
1

Компиляция примера boost.asio

07.07.2012, 23:23. Просмотров 1579. Ответов 3
Метки нет (Все метки)

Не могу скомпилировать первый пример из темы http://www.cyberforum.ru/faq/thread317829.html .
Сначала установил boost:
apt-get install libboost-all-dev libboost-asio-dev

Потом пытаюсь скомпилировать пример:
C++
1
g++ test1.cpp -lboost_system
И выдает ошибки:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
In file included from /usr/include/boost/asio/write.hpp:526,
                 from /usr/include/boost/asio/buffered_write_stream.hpp:32,
                 from /usr/include/boost/asio/buffered_stream.hpp:26,
                 from /usr/include/boost/asio.hpp:34,
                 from test1.cpp:2:
/usr/include/boost/asio/impl/write.ipp: In function ‘size_t boost::asio::write(SyncWriteStream&, const ConstBufferSequence&, CompletionCondition, boost::system::error_code&) [with SyncWriteStream = boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_service<boost::asio::ip::tcp> >, ConstBufferSequence = boost::asio::const_buffers_1, CompletionCondition = boost::system::error_code]:
/usr/include/boost/asio/impl/write.ipp:68:   instantiated from ‘size_t boost::asio::write(SyncWriteStream&, const ConstBufferSequence&, CompletionCondition) [with SyncWriteStream = boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_service<boost::asio::ip::tcp> >, ConstBufferSequence = boost::asio::const_buffers_1, CompletionCondition = boost::system::error_code]’
test1.cpp:29:   instantiated from here
/usr/include/boost/asio/impl/write.ipp:40: error: no match for call to ‘(boost::system::error_code) (boost::system::error_code&, size_t&)/usr/include/boost/asio/impl/write.ipp:40: note: candidates are: void (*)() <conversion>
/usr/include/boost/asio/impl/write.ipp:68:   instantiated from ‘size_t boost::asio::write(SyncWriteStream&, const ConstBufferSequence&, CompletionCondition) [with SyncWriteStream = boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::stream_socket_service<boost::asio::ip::tcp> >, ConstBufferSequence = boost::asio::const_buffers_1, CompletionCondition = boost::system::error_code]’
test1.cpp:29:   instantiated from here
/usr/include/boost/asio/impl/write.ipp:47: error: no match for call to ‘(boost::system::error_code) (boost::system::error_code&, size_t&)/usr/include/boost/asio/impl/write.ipp:47: note: candidates are: void (*)() <conversion>
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.07.2012, 23:23
Ответы с готовыми решениями:

boost::asio
начал ковырять буст. Возник вопрос с созданием клинт-серверного приложения. Для ознакомления хочу...

Boost Asio C++
Добрый день. Юзаю этот ( http://www.boost.org/ ) проект. Нужна помощь с документаций...

boost/asio
Кто тестил asio в Вuilder-е? Код использовал отсюда...

Boost.asio
Добрый день. Я только начал знакомство с boost.asio и при использовании примеров с офф.сайта...

boost::asio cессии
Здравствуйте. Хотелось бы узнать ответ на вопрос, который не где не нашол. Сервер реализован на...

3
alex_x_x
бжни
2456 / 1663 / 134
Регистрация: 14.05.2009
Сообщений: 7,162
08.07.2012, 01:36 2
koka3000, выложи код непосредственно
0
koka3000
11 / 11 / 5
Регистрация: 02.02.2011
Сообщений: 211
08.07.2012, 13:42  [ТС] 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <iostream>
#include <boost/asio.hpp>
 
int main() {
   static const char* ip = "127.0.0.1";
   static const boost::uint16_t port = 44550;
   static const char message[] = "Hello, world!";
 
   // io_service - основа asio.
   boost::asio::io_service ios;
 
   // объект TCP-сокета.
   boost::asio::ip::tcp::socket socket(ios);
 
   // объект представляющий адрес для TCP соединений.
   boost::asio::ip::tcp::endpoint endpoint(boost::asio::ip::address::from_string(ip), port);
 
   // подключаемся к серверу.
   boost::system::error_code error;
   socket.connect(endpoint, error);
 
   // проверяем код завершения операции подключения.
   if ( error ) {
      std::cout << "asio system error: " << error.message() << std::endl;
      return 1;
   }
 
   // посылаем сообщение.
   size_t wr = boost::asio::write(socket, boost::asio::buffer(message, sizeof(message)), error);
 
   // проверяем код завершения операции записи.
   if ( !error ) {
      std::cout << "message sent successfully!" << std::endl;
   } else {
      std::cout << "message sent error: " << error.message() << std::endl;
   }
 
   // закрываем сокет.
   socket.close();
 
   // завершаемся.
   return 0;
}
0
soon
2547 / 1312 / 177
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
08.07.2012, 22:32 4
Код
g++ -c -Wall -D_GLIBCXX_USE_NANOSLEEP -O3 --std=gnu++11 main.cpp -o main.o
main.cpp: In function ‘int main()’:
main.cpp:29:11: warning: unused variable ‘wr’ [-Wunused-variable]
g++ main.o -lm -lboost_regex -lboost_filesystem -lboost_system -lboost_timer -lboost_date_time -lboost_thread -o main
[Finished in 10.0s]
Буст ставил ручками, в том числе либы(не через apt-get).
0
08.07.2012, 22:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.07.2012, 22:32

C++ | boost::asio + ssl?
Доброго времени суток! Хотелось бы узнать как подключаться по SSL? int main() { ...

Winsock vs boost::asio
у Winsock преимущество - это есть русская документация(это не совсем документация но крис касперски...

Boost asio + qt (slots)
Здравствуйте! В общем, имеется клиентский код из документации boost::asio (&lt;ТЫК&gt;) Он у меня...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru