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