Ошибки CMake при сборке cpprestsdk

Я пытаюсь собрать cpprestsdk (https://github.com/Microsoft/cpprestsdk) под MSYS2. С pacman Я установил необходимые зависимости:

  • увеличение
  • OpenSSL

Но я получаю следующий вывод:

$ cmake -G "MSYS Makefiles" .. -DCMAKE_BUILD_TYPE=Release
-- Setting gcc options
-- Added test library httpclient_test
-- Added test library httplistener_test
-- Added test library json_test
-- Added test library pplx_test
-- Added test library streams_test
-- Added test library uri_test
-- Added test library utils_test
-- Added test library websocketclient_test CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the
CMake files:
C:/cpprestsdk/Release/src/Boost_INCLUDE_DIR
used as include directory in directory
C:/cpprestsdk/Release/src
C:/cpprestsdk/Release/tests/functional/streams/Boost_INCLUDE_DIR
used as include directory in directory
C:/cpprestsdk/Release/tests/functional/streams
C:/cpprestsdk/Release/tests/functional/websockets/Boost_INCLUDE_DIR
used as include directory in directory
C:/cpprestsdk/Release/tests/functional/websockets

-- Configuring incomplete, errors occurred! See also "C:/cpprestsdk/Release/build.release/CMakeFiles/CMakeOutput.log".

У меня есть трудности, чтобы понять, что на самом деле означают эти ошибки.
Я пытался проверить вывод журнала, но не нашел ничего столь очевидного …

Я пропускаю некоторые другие зависимости?

ОБНОВИТЬ

После хорошего предложения @Some программист чувак, я исправил cmake ошибки установки Boost_INCLUDE_DIR в CMakelist.txt,

НО теперь у меня есть этот, когда я выпускаю make команда:

$ make
Scanning dependencies of target cpprest
[  0%] Building CXX object src/CMakeFiles/cpprest.dir/http/client/http_client.cpp.obj
cc1plus.exe: error: /mingw32/include/boost: No such file or directory [-Werror=missing-include-dirs]

Он говорит, что не может найти /mingw32/include/boost но это на самом деле существует:

$ ls /mingw32/include/boost/
accumulators             context                       fusion                  make_unique.hpp                predef                         spirit
algorithm                convert                       generator_iterator.hpp  math                           predef.h                       spirit.hpp
align                    convert.hpp                   geometry                math_fwd.hpp                   preprocessor                   statechart
align.hpp                core                          geometry.hpp            mem_fn.hpp                     preprocessor.hpp               static_assert.hpp
aligned_storage.hpp      coroutine                     get_pointer.hpp         memory_order.hpp               program_options                swap.hpp
any.hpp                  coroutine2                    gil                     metaparse                      program_options.hpp            system
...

Я не открываю другой вопрос, потому что боюсь, что проблема связана с предыдущим — не полностью исправлена.

0

Решение

Если вы хотите изменить расположение OpenSSL или Boost, вам следует изменить файлы:

cpprest_find_boost.cmake
cpprest_find_openssl.cmake

Вы можете увидеть различные способы управления им для разных платформ. Я изменил для iOS использование статических библиотек по сравнению с решением, которое они используют.

И то, и другое требует указания правильных включений и правильных путей к библиотекам для каждой соответствующей библиотеки.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]