Я работаю над проектом в c++
, который использует автоинструменты для легкой кросс-компиляции. Я sudo make install
установил MXE в своей системе. Когда просто используется ./configure
и, следовательно, используется g++
, все работает гладко. Однако, используя ./configure --host=i686-w64-mingw32
, я сталкиваюсь с этой ошибкой:
In file included from Game.cpp:1:0:
Game.hpp:4:22: fatal error: SDL2/SDL.h: No such file or directory
#include <SDL2/SDL.h>
После целого дня поиска в Google я не могу найти индикатор того, почему. Я знаю, что при компиляции на Win (в настоящее время на Ubuntu 15.04) заголовки называются по-разному для SDL, но я все еще использую компилятор Unix, насколько я понимаю. Нужно ли мне иметь отдельный источник для Windows с другим включением? Я проверил установку mxe на наличие ошибок и не получил ни одной, поэтому я не могу понять, что это проблема.
При необходимости я могу предоставить более полную картину среды, но я полагаю, что это, возможно, ошибка/предостережение конкретной ОС.
-I/path/to/SDL2/
в параметры компилятора? Что говоритpkg-config --cflags SDL2
? - person Dmitry Grigoryev   schedule 29.06.2015sdl2-config --cflags
выходы:-I/usr/include/SDL2 -D_REENTRANT
.SDL.h
существует в/usr/include/SDL2/
. - person Bloodyaugust   schedule 29.06.2015SDL2
дважды. Если вы используете-I/usr/include/SDL2
и#include <SDL2/SDL.h>
, компилятор будет искать/usr/include/SDL2/SDL2/SDL.h
- person Dmitry Grigoryev   schedule 30.06.2015