Форум программистов, компьютерный форум, киберфорум
Boost C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/25: Рейтинг темы: голосов - 25, средняя оценка - 4.72
0 / 0 / 1
Регистрация: 16.11.2014
Сообщений: 85

Настройка cmake

08.07.2016, 22:16. Показов 5432. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день

Не могу настроить cmake, при компиляции получаю следующие ошибки:

CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `__static_initialization_and_destruction _0':
/usr/local/include/boost/system/error_code.hpp:221: undefined reference to `boost::system::generic_category()'
/usr/local/include/boost/system/error_code.hpp:222: undefined reference to `boost::system::generic_category()'
/usr/local/include/boost/system/error_code.hpp:223: undefined reference to `boost::system::system_category()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::system::error_code::error_code() ':
/usr/local/include/boost/system/error_code.hpp:322: undefined reference to `boost::system::system_category()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::system::errc::make_error_conditi on(boost::system::errc::errc_t)':
/usr/local/include/boost/system/error_code.hpp:487: undefined reference to `boost::system::generic_category()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::asio::error::get_system_category ()':
/usr/local/include/boost/asio/error.hpp:230: undefined reference to `boost::system::system_category()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::thread_exception::thread_excepti on(int, char const*)':
/usr/local/include/boost/thread/exceptions.hpp:51: undefined reference to `boost::system::system_category()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::condition_error::condition_error (int, char const*)':
/usr/local/include/boost/thread/exceptions.hpp:84: undefined reference to `boost::system::system_category()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::detail::thread_data_base::thread _data_base()':
/usr/local/include/boost/thread/pthread/thread_data.hpp:152: undefined reference to `vtable for boost::detail::thread_data_base'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::detail::interruption_checker::in terruption_checker(pthread_mutex_t*, pthread_cond_t*)':
/usr/local/include/boost/thread/pthread/thread_data.hpp:195: undefined reference to `boost::detail::get_current_thread_data( )'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::thread::start_thread()':
/usr/local/include/boost/thread/detail/thread.hpp:178: undefined reference to `boost::thread::start_thread_noexcept()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::thread::~thread()':
/usr/local/include/boost/thread/detail/thread.hpp:253: undefined reference to `boost::thread::detach()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::thread::get_id() const':
/usr/local/include/boost/thread/detail/thread.hpp:742: undefined reference to `boost::thread::native_handle()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::thread::join()':
/usr/local/include/boost/thread/detail/thread.hpp:768: undefined reference to `boost::thread::join_noexcept()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::condition_variable::wait(boost:: unique_lock<boost::mutex>&)':
/usr/local/include/boost/thread/pthread/condition_variable.hpp:81: undefined reference to `boost::this_thread::interruption_point( )'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::shared_mutex::lock_shared()':
/usr/local/include/boost/thread/pthread/shared_mutex.hpp:186: undefined reference to `boost::this_thread::disable_interruptio n::disable_interruption()'
/usr/local/include/boost/thread/pthread/shared_mutex.hpp:193: undefined reference to `boost::this_thread::disable_interruptio n::~disable_interruption()'
/usr/local/include/boost/thread/pthread/shared_mutex.hpp:193: undefined reference to `boost::this_thread::disable_interruptio n::~disable_interruption()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::shared_mutex::lock()':
/usr/local/include/boost/thread/pthread/shared_mutex.hpp:287: undefined reference to `boost::this_thread::disable_interruptio n::disable_interruption()'
/usr/local/include/boost/thread/pthread/shared_mutex.hpp:296: undefined reference to `boost::this_thread::disable_interruptio n::~disable_interruption()'
/usr/local/include/boost/thread/pthread/shared_mutex.hpp:296: undefined reference to `boost::this_thread::disable_interruptio n::~disable_interruption()'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::thread_group::join_all()':
/usr/local/include/boost/thread/detail/thread_group.hpp:118: undefined reference to `boost::thread::joinable() const'
CMakeFiles/TestClientBoost.dir/main.cpp.o: In function `boost::detail::thread_data<void (*)()>::~thread_data()':
/usr/local/include/boost/thread/detail/thread.hpp:90: undefined reference to `boost::detail::thread_data_base::~threa d_data_base()'
CMakeFiles/TestClientBoost.dir/main.cpp.o.rodata._ZTIN5boost6detail11 thread_dataIPFvvEEE[_ZTIN5boost6detail11thread_dataIPFvvEEE]+0x10): undefined reference to `typeinfo for boost::detail::thread_data_base'
collect2: error: ld returned 1 exit status
make[3]: *** [TestClientBoost] Error 1
make[2]: *** [CMakeFiles/TestClientBoost.dir/all] Error 2
make[1]: *** [CMakeFiles/TestClientBoost.dir/rule] Error 2
make: *** [TestClientBoost] Error 2
На g++ работает нормально:
g++ main.cpp -std=c++11 -lboost_system -lboost_thread

Не подскажите как настроить cmake. Дефолтный cmake файл:

Code
1
2
3
4
5
6
7
8
cmake_minimum_required(VERSION 3.5)
project(TestClientBoost)
 
set(BOOST_ROOT "/home/igor/boost_1_60_0")                      <- это я добавил
find_package(Boost REQUIRED system thread timer chrono) <- это я добавил
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(SOURCE_FILES main.cpp)
add_executable(TestClientBoost ${SOURCE_FILES})
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.07.2016, 22:16
Ответы с готовыми решениями:

Boost и Cmake
Я пытаюсь подключить Boost к проекту с использованием Cmake. Получается, что-то в этом роде: find_package(Boost 1.62 COMPONENTS...

Boost & CMake
Проблема, наверно больше в CMake, нежели в бусте. В общем имеем симейковский файл вида: set(Boost_INCLUDE_DIR...

Не подключаются либы в CMake
CMake ни как не может найти бибилиотеку: Could not find the following static Boost libraries: boost_io No Boost...

2
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,035
Записей в блоге: 1
09.07.2016, 23:54
Лучший ответ Сообщение было отмечено Lokki23 как решение

Решение

Code
1
2
add_executable(TestClientBoost ${SOURCE_FILES})
target_link_libraries(TestClientBoost ${Boost_LIBRARIES})
1
0 / 0 / 1
Регистрация: 16.11.2014
Сообщений: 85
10.07.2016, 13:35  [ТС]
Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.07.2016, 13:35
Помогаю со студенческими работами здесь

Boost pre build vs cmake find
это кусок Cmake. set(BOOST_ROOT &quot;C:/local/boost_1_55_0&quot;) set(Boost_USE_STATIC_LIBS OFF) set(Boost_USE_MULTITHREADED ON) ...

Не получается заставить CMake работать с boost
Сколько уже перечитал топиков - без толку. Не работает. Имеется: - Windows 10 - CLion 2018.1.6 - CMake 3.12 - Boost 1.67.0 -...

Ubuntu CMake не видит Boost 1_64 package config
Добрый день. Знающие люди, помогите пожалуйста новичку. Установил Сmake на ubuntu, затем установил Boost 1_64. Запустил сборку...

Boost + Cmake + Clion
Помогите мне подключить Boost к Clion на Windows. Перепробовал уже кучу вариантов - ничего не выходит, заголовки только инклудятся, а...

CMake, CLion, PDCurses
Возникли проблемы с подключением файлов библиотеки PDCurses. CMake находит ее, подключает, но потом выдает ошибки связанные с функциями (на...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru