OpenGL ES and Linux
Alexander Monakov
amonakov at ispras.ru
Tue Dec 17 08:11:03 PST 2013
The issue here is that apitrace picks up its own Khronos headers instead of
system headers; according to main CMakeLists:
# We use bundled headers for all Khronos APIs, to guarantee support for both
# OpenGL and OpenGL ES at build time, because the OpenGL and OpenGL ES 1 APIs
# are so intertwined that conditional compilation extremely difficult. This
# also avoids missing/inconsistent declarations in system headers.
include_directories (BEFORE ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/khronos)
Clearly thirdparty/khronos/EGL/ is missing required logic to define all
platform-specific types in your case; on non-Android Linux, it presumes
X11-based EGL.
On my system Mesa-supplied eglplatform.h has additional code for GBM and
Wayland, for instance.
You could hack this in some way to proceed with testing on your end; for
example by copying system EGL headers to thirdparty/khronos.
I don't know how to approach this on apitrace side. I encourage you to open
an issue on github and link this discussion.
Alexander
More information about the apitrace
mailing list