c++ - 无法构建 opengl es 2.0 c++ native android 项目。 ( fatal error : android/sensor. h:没有这样的文件或目录)

标签 c++ eclipse android-ndk opengl-es-2.0

我尝试制作一本书样本。 ( http://www.apress.com/9781430258308 ,可以从那里下载完整的源代码。我尝试构建第一个代码。) 我下载并安装了最新的 android sdk、adt 和 eclipse。我在 Eclipse 中安装了 Sequoyah。我使用 android NDK r8c 而不是最新的 NDK,因为当我尝试在 Eclipse 中设置 NDK 路径时出现“NDK 的无效路径”错误。(Preferences/Android/Native Development/NDK Location)

我将 MiniGW 用于 C++ 编译器。(我使用本指南 ( http://riccardotramma.com/2011/04/setup-eclipse-to-develop-opengl-glut-apps-in-java-cc-on-windows-mac/ ) 在 Eclipse 中设置 MiniGW。只是 MiniGW 部分。)我使用 MiniGW 而不是 Cygwin,因为我总是遇到“意外的文件结尾”错误在构建过程的某个时刻。

我还在 Properties/C/C++ General/Paths and Symbols 中向项目添加了一些包含路径和库(java 和 opengles)。如果我不这样做,我会得到一个“ fatal error :jni.h:没有这样的文件或目录”错误,我会得到更多关于进一步的 .h 声明的错误。(egl.h 等)

现在我只收到“ fatal error :android/sensor.h:没有这样的文件或目录”错误(这是第一个 android .h 声明,可能我会收到所有 android 特定 .h 文件的更多错误稍后在代码中。

我注意到一件事。在 Outline 窗口中 $(call import-module,android/native_app_glue) 行附近有一个红色的 x。其他一切似乎都很好。

如果您可以成功构建上述示例(您可以免费下载),请告诉我您的确切配置,或者请指导我如何构建我的第一个 native opengl 代码。 (sdk,ndk版本等)

提前致谢

史蒂夫

最佳答案

这里有一些要点:

您不能将 MinGW 用作 C++ 编译器来处理 Android NDK 项目。 Android NDK 有它自己特定的编译器/工具链。如果您在 Eclipse 中右键单击您的项目并转到 C/C++ Build > Tool Chain Editor。当前的工具链应该是 Android GCC。

如果您遇到意外的文件结尾错误,是否是因为某些代码具有 unix/linux 风格的行结尾?这是一个例子(使用文本编辑器确保所有结束行都是 Windows/DOS 格式的解决方案)- http://connect.microsoft.com/VisualStudio/feedback/details/794991/c-error-directive-and-unix-line-endings-leads-to-an-unexpected-end-of-file

关于c++ - 无法构建 opengl es 2.0 c++ native android 项目。 ( fatal error : android/sensor. h:没有这样的文件或目录),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21073311/

相关文章:

c++ - D3D 特征级别问题

c++ - 内存是如何分配的,又是如何释放的?

eclipse - 如何让 Eclipse 像 IntelliJ 一样显示不可打印的字符

java - Eclipse 编译参与者未触发

android - '\0' 和 0 之间的区别用于终止字符串

android - 类型无法在 ndk 中解析

android - 为什么这么多 Android 应用使用 NDK?

c++ - PCL 用指针替换点云?

eclipse - Eclipse 中的 Team->Commit 显示来自符号链接(symbolic link)目录的资源。如何忽略?

c++ - 使用 QToolBox,哪个设置可以让页面只有它的内容大小?