Я относительно плохо знаком с cMake, и я пробую, используют повышение asio библиотека в моем проекте.
Я смог заставить cMake находить другие библиотеки повышения, такие как smart_ptr и lexical_cast, но я получаю ошибку компоновщика, когда я пытаюсь включать boost/asio.hpp
:
LINK : fatal error LNK1104: cannot open file 'libboost_system-vc90-mt-1_40.lib'.
Я затем пытался изменить свой CMakeLists.txt от
find_package(Boost 1.40.0 REQUIRED)
кому:
find_package(Boost 1.40.0 REQUIRED COMPONENTS asio)
cMake затем просит Boost_ASIO_LIBRARY_DEBUG
и Boost_ASIO_LIBRARY_RELEASE
. Я иду об этом правильным путем, и раз так где я должен указать на cMake для нахождения этих библиотек. (Я использую cMake 2.6 и повышение 1.40.0),
В соответствии с документацией ASIO :
Следующие библиотеки должны быть доступны для подключения программ, использующих Boost.Asio:
- Boost.System для Boost :: System :: Error_Code и Boost :: System :: System_Error Classes.
- BOOST.REGEX (необязательно) Если вы используете какие-либо из перегрузки Read_until () или ASYNC_READ_UNTIL (), которые принимают усиление :: Pregex Parameter.
- OpenSSL (необязательно), если вы используете поддержку SSL Boost.Asio.
Если вы посмотрите на ошибку своей ссылки, вы увидите, что она ищет библиотеку Boost.system. Я бы попробую изменить ваши cmaklists.txt для чтения:
find_package(Boost 1.40.0 REQUIRED system)