CMake stdlib включает проблемуC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 CMake stdlib включает проблему

Сообщение Anonymous »

Мне нужно скомпилировать проект C++ с помощью CMake и MinGW-w64. Проект зависит от zlib, поэтому CMakeLists.txt содержит:

Код: Выделить всё

find_package(ZLIB REQUIRED)
CMake не будет работать в ZLIB, если я не добавлю следующий путь к CMAKE_PREFIX_PATH:

Код: Выделить всё

C:/Dev/mingw64-8.1.0/x86_64-w64-mingw32/include
При добавлении этого пути CMake работает нормально. Но я получаю следующую ошибку компиляции:

Код: Выделить всё

#include_next 
^~~~~~~~~~
C:/Dev/mingw64-8.1.0/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/cstdlib:75:15:
fatal error: stdlib.h: No such file or directory
После некоторого поиска этой последней ошибки я обнаружил, что могу исправить ее, отредактировав CMake include_CXX.rsp и либо:
  • Удалить -isystem C:/Dev/mingw64-8.1.0/x86_64-w64-mingw32/include
  • Или изменить -isystem на -I
По сути, мне нужно передать путь включения в CMake, чтобы он нашел zlib.h, и удалить этот путь из файлов, созданных CMake... Есть ли правильное решение?
Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/643 ... lude-issue
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»