我能够运行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'
...
答案 0 :(得分:0)
在Android.mk文件中(在/ jni文件夹中),应该有一个LOCAL_LDLIBS行。需要在此处指出与Android捆绑在一起的一些库。请尝试以下
LOCAL_LDLIBS:= -llog -landroid -lEGL -lGLESv1_CM
或者至少添加选项-lEGL和-lGLESv1_CM。第一个是EGL库,第二个是GLES库。
我不知道最后一个是否是您项目的正确版本号。
答案 1 :(得分:0)
最后我使用了eclipse(对于那些处理相同问题的人)和Eclipse都很好。