android c++ 对eglGetCurrentContext 的未定义引用

dvr*_*rer 2 c++ android opengl-es android-ndk opengl-es-2.0

我正在尝试使用 C++ 获取 Android 上当前的 OpenGL 上下文。

但我收到编译时错误,如何获取当前上下文?

错误:

undefined reference to eglGetCurrentContext()
Run Code Online (Sandbox Code Playgroud)

代码:

#include <GLES2/gl2.h>
#include <EGL/egl.h>

void foo()
{
    EGLContext ctx = eglGetCurrentContext();
}
Run Code Online (Sandbox Code Playgroud)

sol*_*xel 6

您的 make 文件库列表中缺少 libEGL。

假设您正在使用 CMake 文件,则您的 make 文件中需要类似以下内容:

# Include libraries needed
target_link_libraries(
            GLESv2
            EGL)
Run Code Online (Sandbox Code Playgroud)

请注意GLESv2,此错误不需要,但考虑到您包含 GLES2 标头,您可能在某个时候需要 GLESv2 库...