Как использовать Boost.Asio в Visual Studio 2005 - Windows Xp? - PullRequest
0 голосов
/ 20 апреля 2011

Мне нужно использовать библиотеку Boost.asio в C ++ Visual Studio 2005 (Windows XP).

Я следовал за этими шагами: - Я скачал исполняемый файл. exe для установки библиотек Boost на Windows XP в моем пути к файлу.

  • Я установил переменную среды INCLUDE: W: \ boost_1_46_1 (мой путь к файлу, где есть библиотеки)

  • в Visual Studio 2005 в свойствах моего проекта (VS-> tools-> Опции проекта и решения-> vcc ++ каталоги) я добавил $ (INCLUDE)

  • в свойствах моего проекта в visual studio я добавил путь моих библиотек к компоновщику, чтобы скомпилировать мой пример.

  • Я попытался скомпилировать файлы примеров: http://www.boost.org/doc/libs/1_46_1/doc/html/boost_asio/example/multicast/sender.cpp

  • У меня есть несколько ошибок во время компиляции:

Ошибка 3 Ошибка C2653: «asio»: это не имя класса или пространства имен c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 2

Ошибка 4: ошибка C2653: «asio»: это не имя класса или пространства имен c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 24

Ошибка 5, ошибка C2143: синтаксическая ошибка: отсутствует ')' перед '&' c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 24

Ошибка 6 ошибка C2143: синтаксическая ошибка: отсутствует ';' до '&' c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 24

Ошибка 7 Ошибка C2460: «sender :: io_service»: используется «sender», который определяется c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 24

Ошибка 8, ошибка C4430: отсутствует указатель типа - предполагается int. Примечание: C ++ не поддерживает default-int c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 24

Ошибка 9 Ошибка C2653: «asio»: это не имя класса или пространства имен c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 24

Ошибка 10 Ошибка C2143: синтаксическая ошибка: отсутствует ';' до '&' c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 24

Ошибка 11 Ошибка C4430: отсутствует указатель типа - предполагается int. Примечание: C ++ не поддерживает default-int c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 24

Ошибка 13, ошибка C2059: синтаксическая ошибка: ')' c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 24

Ошибка 14, ошибка C2065: «адрес многоадресной рассылки»: необъявленный идентификатор c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 26

Ошибка 15 Ошибка C3861: «конечная точка_»: идентификатор не найден c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 26

Ошибка 16, ошибка C2531: 'sender :: multicast_address': недопустимая ссылка на битовое поле c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 26

Ошибка 17, ошибка C4430: отсутствует указатель типа - предполагается int. Примечание: C ++ не поддерживает default-int c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 26

Ошибка 18, ошибка C2327: 'sender :: io_service': не является именем типа, статическим или перечислителем c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 27

Ошибка 19, ошибка C2061: синтаксическая ошибка: идентификатор 'io_service' c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 27

Ошибка 20 Ошибка C2059: синтаксическая ошибка: ')' c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 27

Ошибка 21, ошибка C2061: синтаксическая ошибка: идентификатор «timer_» c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 28

Ошибка 22, ошибка C2143: синтаксическая ошибка: отсутствует ')' перед '{' c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 30

Ошибка 23, ошибка C4430: отсутствует указатель типа - предполагается int. Примечание: C ++ не поддерживает default-int c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 30

Ошибка 24, ошибка C2143: синтаксическая ошибка: отсутствует ';' до '{' c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 39

Ошибка 25 ошибка C2334: неожиданный токен (ы) перед '{'; пропуск видимого тела функции c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 39

Ошибка 26: фатальная ошибка C1004: обнаружен неожиданный конец файла c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 100

Я пропустил какой-то шаг? Спасибо


Теперь я добавил в пример файла sender.cpp это:

#using namespace boost;

теперь ошибки уменьшены следующим образом:

Ошибка 3, ошибка C2039: код ошибки: не является членом команды boost :: asio c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 42

Ошибка 4, ошибка C4430: отсутствует указатель типа - предполагается int. Примечание: C ++ не поддерживает default-int c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 42

Ошибка 5 Ошибка C2143: синтаксическая ошибка: отсутствует ',' до '&' c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 42

Ошибка 6, ошибка C2039: код ошибки: не является членом команды boost :: asio c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 53

Ошибка 7, ошибка C4430: отсутствует указатель типа - предполагается int. Примечание: C ++ не поддерживает default-int c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 53

Ошибка 8, ошибка C2143: синтаксическая ошибка: отсутствует ',' до '&' c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 53

Ошибка 9 Ошибка C2065: «ошибка»: необъявленный идентификатор c: \ Documents and Settings \ GG \ Desktop \ sender.cpp 44

1 Ответ

0 голосов
/ 20 апреля 2011

Звучит так, как будто вы выполнили все шаги.

Если вы щелкнете правой кнопкой мыши # include в VS и откроете include, он найдет и откроет файл заголовка asio?Это было бы первым указанием, правильно ли настроена ваша среда VS.

Я бы также проверил, правильно ли установлен boost: если вы выбрали W: \ boost_1_46_1 в качестве установочного каталога (обычно это по умолчанию что-то вроде C:\ Program Files \ boost), убедитесь, что в каталоге

  • находится папка boost , которая содержит файлы заголовков, а также папки, специфичные для библиотеки.
  • Каталог lib содержит все встроенные двоичные файлы для вашей версии VS (т.е. vc8)
...