交叉编译程序找不到 SDL2 标头
Cross-compile program can't find SDL2 headers
我正在c++
中进行一个项目,该项目使用自动工具进行轻松的交叉编译。我的系统上有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(目前在Ubuntu15.04上)上编译时,头文件的SDL名称不同,但据我所知,我仍然使用Unix编译器。我是否需要为Windows提供单独的源代码,并包含不同的内容?我监测了mxe安装的错误,但没有收到任何错误,所以我无法想象这是问题所在。
如果需要,我可以提供一个更完整的环境图片,但我认为这可能是一个操作系统特定的错误/警告。
SDL2标头应包含如下:
#include <SDL.h>
不是:
#include <SDL2/SDL.h>
为什么
因为当你运行sdl2-config --cflags
时,它会输出一个类似于include/SDL2
的路径,如果你在它上执行ls
,你会得到SDL.h
而不是SDL2/SDL.h
。
相关文章:
- g++ 说函数不存在,即使包含正确的标头
- spdlog标头仅与外部fmt一起使用.spdlog错误:'内部':不是'fmt'
- 在CMake中使用find_package时,是否会显式包含标头
- 错误"Could not find Boost"(缺少:上下文标头)
- 如何在标头中声明(或定义)函数的问题
- 如何避免在仅标头库中C++类/变量重定义
- C++算法标头中,为什么要使用 "!(val < *first)" ?
- C++标头错误 C2238 意外标记";"
- std::initializer_list,大括号初始化和标头
- 在 c++ 中拆分类和标头中的继承,错误
- 如何确定哪个标头调用 c++ 中的另一个标头
- 如何在生成文件中添加多个标头 (HDR) 和对象?
- 我可以在运行时重新定义在 OpenCascade/OCCT 标头中定义的 c++ 静态常量吗?
- GCC,CMake,预编译标头和维护依赖项
- VisualStudio:使用 Suse Enterprise Server 12 SP5 时,不会下载远程库标头
- 一个标头库中的错误
- 可视化 Bazel C++预编译标头实现
- 如何在 CMake 中添加预编译标头用于 Visual Studio 生成器
- 编译os x时找不到SDL2标头
- 交叉编译程序找不到 SDL2 标头