OpenGL Profiler does not work

I have a simple SDL application that I am compiling from the command line. A couple days ago I was using the OpenGL Profiler just fine to inspect the OpenGL state of my program. However, today I can't seem to get it to work at all. When I launch my application through the profiler, none of the breakpoints I set will pause the program execution. Setting "Break before all" does not do anything. If I run my application and attach the profiler to it, my application will segfault 100% of the time and the profiler will lock up. I haven't changed any configuration files to my knowledge. It seems as if one day it was working and the next it is unusable.


I am linking against the SDL2.framework file provided by SimpleDirect Media Layer, and I'm linking against Apple's OpenGL.framework. This is a C++ application I compile from the command line with CMake.


Any suggestions?

Replies

I have the same problem! My app does not use SDL2.framework and linked against OpenGL.framework as well.

Same here. OpenGL profiler with XCode8 seems broken (again).

Same here, SDL app in XCode.

Hi all, I am having the exact same issue with GLFW.


I checked messages under the Profiler it reports an error about invalid ipc something.. anyone else?

I'm also having this message gloInitializeLibrary: mach_msg_overwrite(kGLOMessageInitialize) (ipc/send) invalid msg-type


It crashes every time I try to attach OpenGL Profiler to my application.


Profiler Version 5.1 (14)

Xcode Version Version 8.2.1 (8C1002)

OpenGL Profile created with attribute.

kCGLPFAOpenGLProfile, (CGLPixelFormatAttribute)kCGLOGLPVersion_3_2_Core


I checked ~/.MacOSX/environment.plist and GL_ENABLE_DEBUG_ATTACH is set to YES


This is the OGL Profiler Thread stack.


OGL Profiler (6)#0

0x0000000127f01f03 in ___lldb_unnamed_symbol1356$$GLProfilerFBDisp () #1

0x0000000127f01df8 in ___lldb_unnamed_symbol1355$$GLProfilerFBDisp () #2

0x0000000128024f3a in ___lldb_unnamed_symbol4046$$GLProfilerFBDisp () #3

0x0000000127ece278 in gloTerminateLibrary () #4

0x00007fff9decbb5e in ___lldb_unnamed_symbol11$$OpenGL () #5

0x00007fff9decba52 in ___lldb_unnamed_symbol9$$OpenGL () #6

0x00007fff9decc072 in glcDebugListener () #7

0x0000000100fbac50 in _pthread_body () #8

0x0000000100fbab9c in _pthread_start () #9

0x0000000100fba385 in thread_start ()


Valentin.

I'm having the same problem.


It seems that OpenGL profiler is broken.

Same problem here. For me, I notice that in the OpenGL Profiler, the "status" says "Waiting for profiling to start…" and never changes.


While waiting for an update (which may never come), does anyone know of any alternate OpenGL debugger/profilers for Mac? Everything I've found seems to be defunct.

You should try OpenGL Profiler with macOS 10.11.


This bug is under review by Apple. I'll send report feedback to this post as soon as I get it.

The only way I found to use OpenGL Profiler on macOS 10.12 is to enable remote profiling from the preferences. (checkbox is disabled while you don't set a password) Once enabled, you can connect to it using another machine (it may be 10.12) and attach profiler to the running application you want to debug.


I hope it could help you.


Valentin.

Thanks Valentin! I just wanted to add that it's perfectly possible to not use a separate machine. Just connect to the remote debugging service from the same machine and everything works.

hi guys. i've filed a bug report with Apple on this, hopefully it will be addressed soon.


In the meantime, I'd love to try the remote debugging solution. However I am having trouble locating Instructions on how to go about that. If anyone can give some steps on how to use remote debugging with opengl profiler on the same machine, I'd very much appreciate it.

ALso having problems on 10.12.4 with OpenGL profiler and a Unity3D app. My experinece is that any OS update will break OpenGL profiler.. Hopefully upgrading XCode and the graphics tools fixes it but it's a crapshoot. Over the last 5 years or so OpenGL Profiler works maybe half the time.

About four months later, this bug is still alive.

Can you please explain how to do that?