IMKClient subclass: chose IMKClient_Legacy runtime error on MacOS 15

Using GLFW 3.4 on MacOS 15.0.1 using Apple clang version 16.0.0 (clang-1600.0.26.3) Target: arm64-apple-darwin24.0.0 to compile the basic example code on Documentation | GLFW get the following messages when execution starts:

… a.out[6930:998382] +[IMKClient subclass]: chose IMKClient_Legacy
… a.out[6930:998382] +[IMKInputSession subclass]: chose IMKInputSession_Legacy

The first message seems to happen during the call to glfwPollEvents(). Nonetheless, the example program seems to run OK (as does my larger program that now has the same issue).

Probably unrelatedly, the compiler complains that:

glfwtest.c:26:9: warning: ‘glClear’ is deprecated: first deprecated in macOS 10.14 - OpenGL API deprecated. (Define GL_SILENCE_DEPRECATION to silence these warnings) [-Wdeprecated-declarations]
26 | glClear(GL_COLOR_BUFFER_BIT);
| ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl.h:2394:13: note: ‘glClear’ has been explicitly marked deprecated here
2394 | extern void glClear (GLbitfield mask) OPENGL_DEPRECATED(10.0, 10.14);
| ^

The message about about IMKCLient_Legacy appears to be some debug output accidentally left in MacOS libraries. I think it will only appear for apps launched from the console or console apps themselves.

The link warning about OpenGL API being deprecated is because Mac want folk to switch to Metal. GLFW can work with Vulkan on MoltenVK on MacOS if you want, but OpenGL should continue to function despite being deprecated.

Yup, all console apps using GLFW (or SDL2 or whatever else) seem to be getting these messages; no reaction from Apple yet: For several applications, getting [IMKCli… - Apple Community

1 Like