Форум программистов, компьютерный форум, киберфорум
Boost C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Boost C++ Книги по Boost Здравствуйте, я понимаю, что тема изъезженная вдоль и поперек. Да, я осилил погуглить, прежде чем создать эту тему, но не нашел книг по boost'у 2017-2018 года. Может что-нибудь посоветовать? https://www.cyberforum.ru/ boost-cpp/ thread2276288.html Boost 1.67.0 ssl connect не получается сделать timeout 10sec Boost C++
Не очень-то я сильна в библиотеке boost 1.67.0, от чего прошу помощи экспертов. Спустя какое-то время, запрос ждет ответа от сервера бесконечно, из-за отсутствия связи и приходится перезапускать...
Boost C++ Именованный мьютекс умершего приложения https://www.cyberforum.ru/ boost-cpp/ thread2272967.html
Бустовые именованные мьютексы реализованы на винде через файлы, на линкусе через shared memory (грубо, тоже файлы). Проблема возникает, когда приложение использующее такой мьютекс умирает по внешней...
Boost C++ Копирование сокета или передача сокета в функцию Добрый день всем, столкнулся с тем что не могу скопировать сокет. boost::asio::ip::tcp::socket socket(io_service); acceptor.accept(socket); ChatClient(socket); int... https://www.cyberforum.ru/ boost-cpp/ thread2266782.html
Потеря пакетов при передаче клиент->сервер - Boost C++ Boost C++
Написал простенькую реализацию сервера и клиента. Клиент: #include "stdafx.h" #include <boost/asio.hpp> #include <iostream> #include <fstream> int main() { boost::asio::io_service...
Boost C++ Потеря пакетов при передаче клиент->сервер https://www.cyberforum.ru/ boost-cpp/ thread2261503.html
Написал простенькую реализацию сервера и клиента. Клиент: #include "stdafx.h" #include <boost/asio.hpp> #include <iostream> #include <fstream> int main() { boost::asio::io_service...
Boost C++ Как в boost обмениваться сообщениями между потоками? https://www.cyberforum.ru/ boost-cpp/ thread2260459.html
Как в бусте обмениваться сообщениями между потоками? Обычно есть очереди или маилбоксы. Создаешь очередь/маилбокс для типа MyStruct и есть функции типа "Ожидать сообщение в очереди %_имя_очереди в...
Boost C++ Не меняется дата при изменении времени
tz_database tzDB; tzDB.load_from_file("C:/date_time_zonespec.csv"); std::string ms = msg.substr(0, msg.length()-2); ptime timeUTC = second_clock::universal_time(); time_zone_ptr...
Boost C++ Ошибка в boost::asio::ip::tcp::iostream stream (&request); Только приступаю к изучению boost::asio, не судите строго. Программа вычитывает картинку и записывает ее (пока что) в текстовый файл #include "stdafx.h" #include <boost/asio.hpp> #include... https://www.cyberforum.ru/ boost-cpp/ thread2252626.html Boost C++ Получение времени согласно указанной timezone https://www.cyberforum.ru/ boost-cpp/ thread2252269.html
ptime timeUTC = second_clock::universal_time(); boost::gregorian::date dateObj = timeUTC.date(); std::string ms = msg; ss << timeUTC.date().day_of_week() << ' ' <<...
Установка Boost в MVS 2017 Boost C++
Приветствую! Проблема с работой Бустов. Всё, что я делал: 1. Скачал Boost 1.67 . 7z архив. 2. Распаковал.
Boost C++ Asio deadline_timer и tcp::socket отослать асинхоронно по tcp по таймеру https://www.cyberforum.ru/ boost-cpp/ thread2248529.html
Здравствуйте. Цель по tcp соединению отсылать через равные промежутки времени сообщение одно и тоже. Слушать соединение. Цель 2 (не этого вопроса) отсылать случайные сообщения по тому же...
36 / 37 / 10
Регистрация: 02.04.2016
Сообщений: 300
0

Не получается заставить CMake работать с boost - Boost C++ - Ответ 12560635

25.07.2018, 02:03. Показов 2712. Ответов 1
Метки (Все метки)

Сколько уже перечитал топиков - без толку. Не работает. Имеется:

- Windows 10
- CLion 2018.1.6
- CMake 3.12
- Boost 1.67.0
- mingw32-i686-8.1.0-release-posix-dwarf-rt_v6-rev0

Boost скачал с официального сайта. По инструкции https://theboostcpplibraries.c... stallation
я запустил из корневого каталога bootstrap.bat.
После этого добавил в PATH путь к компилятору запустил
bjam --toolset=gcc --build-type=complete --prefix=D:\Boost install

В CLion задал внешний CMake 3.12, вместо встроенного 3.10.3, т.к. прочитал,
что только версии CMake, вышедшие после релиза Boost,
могут корректно определять его предыдущие версии.

Далее создал проект с таким содержимым:

main.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <boost/filesystem.hpp>
 
using namespace boost::filesystem;
 
int main() {
    
    std::cout << file_size("C:/Users/Lyosha12/Desktop/Untitled 1.wav") << std::endl;
    
    return 0;
}

CMakeLists.txt

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
cmake_minimum_required(VERSION 3.12)
project(Test_Boost_Filesystem)
 
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++17 -pedantic -Wall -Wextra")
set(CMAKE_EXE_LINKER_FLAGS "-static -static-libgcc")
 
add_executable(Test_Boost_Filesystem main.cpp)
 
set(BOOST_ROOT "D:/Boost")
set(Boost_INCLUDE_DIR "${BOOST_ROOT}/include/boost-1_67")
set(Boost_LIBRARY_DIR "${BOOST_ROOT}/lib")
 
 
find_package(Boost 1.67.0)# COMPONENTS REQUIRED filesystem system)
 
if(Boost_FOUND)
    include_directories(${Boost_INCLUDE_DIRS})
    target_link_libraries(Test_Boost_Filesystem ${Boost_LIBRARIES})
endif()


Boost находится, даже CLion определяет существование <boost/filesystem.hpp>.
Однако, как сказано в документации к Boost, filesystem нужно собирать, т.к. это не header-only библиотека.
Ну и при изменении find_package(Boost 1.67.0) на
find_package(Boost 1.67.0 COMPONENTS REQUIRED filesystem system)
Boost перестаёт находится, а я получаю эти ошибки:
Кликните здесь для просмотра всего текста
Код
D:\Programs\ProgrammingEnvironment\Compilers\CMake-3-12\bin\cmake.exe -DCMAKE_BUILD_TYPE=Debug -G "CodeBlocks - MinGW Makefiles" D:\Programs\ProgrammingEnvironment\LocalProjects\Tests\Test-Boost-Filesystem
CMake Error at D:/Programs/ProgrammingEnvironment/Compilers/CMake-3-12/share/cmake-3.12/Modules/FindBoost.cmake:2044 (message):
  Unable to find the requested Boost libraries.

  Boost version: 1.67.0

  Boost include path: D:/Boost/include/boost-1_67

  Could not find the following Boost libraries:

          boost_filesystem
          boost_system

  No Boost libraries were found.  You may need to set BOOST_LIBRARYDIR to the
  directory containing Boost libraries or BOOST_ROOT to the location of
  Boost.


Хотя в папке они существуют.

Подскажите пожалуйста верный путь

Вернуться к обсуждению:
Не получается заставить CMake работать с boost Boost C++
Миниатюры
Не получается заставить CMake работать с boost   Не получается заставить CMake работать с boost  
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.07.2018, 02:03
Готовые ответы и решения:

Boost::asio::read как заставить работать с таймаутом?
При чтении данных из порта, если нет ответа, то поток уходит в бесконечное ожидание. Может кто-то...

Не получается заставить работать сокеты по интернету
Помогите разобраться, никак не получается заставить работать сокеты по интернету. Если по порядку,...

FastProg программатор, не получается заставить работать
Всем доброго времени суток. Когда-то давно прикупил себе Fastprog программатор аналог mkii. Шил им...

Не получается заставить работать одновременно два jQuery решения
Установил галерею PhotoSwipe и есть меню с всплывающей картинкой при наведении на пункт - не хотят...

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.07.2018, 02:03

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

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

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

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

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