在尝试构建我的应用时,我遇到了非常恼人的错误。
这是完整的错误堆栈
Severity Code Description Project File Line
Error linker command failed with exit code 1 (use -v to see invocation) PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\clang.exe 1
Error undefined reference to 'glGetAttribLocation' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 70
Error undefined reference to 'glCreateProgram' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 87
Error undefined reference to 'glAttachShader' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 91
Error undefined reference to 'glAttachShader' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 92
Error undefined reference to 'glLinkProgram' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 93
Error undefined reference to 'glGetProgramiv' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 96
Error undefined reference to 'glDeleteProgram' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 100
Error undefined reference to 'glCreateShader' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 111
Error undefined reference to 'glShaderSource' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 115
Error undefined reference to 'glCompileShader' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 116
Error undefined reference to 'glGetShaderiv' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 119
Error undefined reference to 'glGetShaderiv' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 124
Error undefined reference to 'glDeleteShader' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 128
Error undefined reference to 'glUseProgram' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 172
Error undefined reference to 'glVertexAttribPointer' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 174
Error undefined reference to 'glEnableVertexAttribArray' PewPew.NativeActivity c:\workspace\PewPew\PewPew\PewPew.NativeActivity\Renderer.cpp 175
好吧,它似乎与OpenGL调用有关,但我无法理解究竟是怎么回事。
我已经加入
#include <GLES2/gl2.h>
#include <GLES2/gl2ext.h>
#include <EGL/egl.h>
#include <GLES/gl.h>
但仍然没有运气。
关于我做错了什么的任何建议?
答案 0 :(得分:2)
好吧,没关系,伙计们,我只是自己想出来了。
出现此问题是因为我正在尝试使用GLES 2.0函数,而不是GLES 1.0(在创建新的NativeActivity应用程序时默认设置)。因此,基本上您只需右键单击您的项目并转到属性 - &gt;链接器 - &gt;输入 - &gt;库依赖项并将GLESv1_CM更改为GLESv2。