【问题标题】:Sample Android NDK hello-gl2 unable to compile on Android Studio示例 Android NDK hello-gl2 无法在 Android Studio 上编译
【发布时间】:2015-04-04 17:56:32
【问题描述】:

我能够运行 NDK 中提供的示例的 hello-jni,但我无法编译 hello-gl2 示例。

你能帮帮我吗? (我认为是与 OpenGL 链接的问题)

这是 Android Studio 报告的错误:

C:\AndroidstudioProjects\hello-gl2\app\src\main\jni\gl_code.cpp
Error:(39) undefined reference to `glGetError'
Error:(41) undefined reference to `__android_log_print'
Error:(40) undefined reference to `glGetError'
Error:(34) undefined reference to `glGetString'
Error:(35) undefined reference to `__android_log_print'
Error:(58) undefined reference to `glCreateShader'
Error:(60) undefined reference to `glShaderSource'
Error:(61) undefined reference to `glCompileShader'
Error:(63) undefined reference to `glGetShaderiv'
Error:(66) undefined reference to `glGetShaderiv'
Error:(70) undefined reference to `glGetShaderInfoLog'
Error:(72) undefined reference to `__android_log_print'
Error:(75) undefined reference to `glDeleteShader'
...

【问题讨论】:

    标签: android opengl-es android-ndk


    【解决方案1】:

    在您的 Android.mk 文件中(在 /jni 文件夹中),应该有一个 LOCAL_LDLIBS 行。需要在此处指出一些与 Android 捆绑在一起的库。试试下面的

    LOCAL_LDLIBS := -llog -landroid -lEGL -lGLESv1_CM

    或者至少添加选项 -lEGL 和 -lGLESv1_CM。第一个是EGL库,第二个是GLES库。

    我不知道最后一个是否是您项目的正确版本号。

    【讨论】:

    • 很遗憾这不起作用,但感谢您的帮助。我终于在 Eclipse 上导入了项目,项目运行良好。
    【解决方案2】:

    最后我使用了 eclipse(对于那些处理同样问题的人)并且使用 Eclipse 一切都很好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-18
      • 1970-01-01
      • 1970-01-01
      • 2017-03-02
      相关资源
      最近更新 更多