我正在尝试在我的函数中使用gluUnProject()
将视口的2D坐标转换为3D世界模型。但是,当我尝试构建时,我收到了这条消息:
d:/android-ndk-r8d/toolchains/arm-linux-androideabi-4.6/prebuilt/windows/bin /../ LIB / GCC /臂-Linux的androideabi / 4.6 /../../。 ./../臂-Linux的androideabi / bin中/ ld.exe:
./ obj / local / armeabi / objs-debug / tuxrider / src / course_load.o:在函数get_OGL_position中:jni / tuxrider / src / course_load.c:124:错误:未定义引用'gluUnProject'colle2:ld返回1退出状态
/cygdrive/d/android-ndk-r8d/build/core/build-binary.mk:397:目标`obj / local / armeabi / libtuxrider.so'的配方失败了make: *
[obj / local / armeabi / libtuxrider.so]错误1
Eclipse中的Indexer识别此函数,但ndk-build
没有。 OpenGLES 2.0有问题吗?
答案 0 :(得分:1)
gluUnProject()
不是OpenGL ES的一部分。它是GL实用程序库GLU
的一部分,不会被Android NDK公开。
有一个适用于Android的GLU库端口 - GLU ES:http://code.google.com/p/glues/只需使用它。
答案 1 :(得分:0)
collect2:ld返回1退出状态
这是来自链接器(名为ld)的一个神秘但常见的错误,您可能包含了openGL-ES的标题,但忽略了实际链接到库。