use with mesa

Alexander Monakov amonakov at ispras.ru
Fri Nov 8 11:58:24 CET 2013


> > Hm, I think tracing should work without a context, just the result may not
> > be
> > replayable?
> >
> > What happens if you do
> >
> >    TRACE_LIBGL=/work/apps/mesa/devel/classic/lib/libOSMesa32.so apitrace
> >    trace
> >    ...
> no more segv! but looks like my app doesn't run, and trace file is empty.
> 
> apitrace: loaded
> apitrace: tracing to mesa-line-trace
> error: unavailable function glXGetProcAddressARB

OK, this can happen when apitrace tries to look up a function outside of Linux
OpenGL ABI.  Not sure if you need it, but the following hack should work
around it:

diff --git a/dispatch/glproc_gl.cpp b/dispatch/glproc_gl.cpp
index 2516dab..3d4e691 100644
--- a/dispatch/glproc_gl.cpp
+++ b/dispatch/glproc_gl.cpp
@@ -272,7 +272,7 @@ _getPublicProcAddress(const char *procName)
 void *
 _getPrivateProcAddress(const char *procName)
 {
-    return (void *)_glXGetProcAddressARB((const GLubyte *)procName);
+    return _libgl_sym(procName);
 }


More information about the apitrace mailing list