我正在c++
开展一个项目,该项目使用autotools轻松进行交叉编译。我在我的系统上sudo make install
'd 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>
整天在谷歌周围钓鱼后,我似乎无法找到原因。我知道在Win上编译时(目前在Ubuntu 15.04上),标题的名称因SDL而有所不同,但根据我的理解,我仍在使用Unix编译器。我是否需要为Windows提供单独的源,使用不同的包含?我监视mxe安装是否有错误并且没有收到任何错误,所以我无法想到这就是问题所在。
如果需要,我可以提供更完整的环境图片,但我相信这可能是操作系统特定的错误/警告。
答案 0 :(得分:0)
SDL2标题应包含如下:
#include <SDL.h>
不
#include <SDL2/SDL.h>
因为当您运行sdl2-config --cflags
时,其输出的路径类似于此include/SDL2
,如果您对其执行ls
,则会SDL.h
而不是SDL2/SDL.h
。