karlstav / cava

Cross-platform Audio Visualizer
MIT License
3.92k stars 225 forks source link

Linking fails on 10.6: `Undefined symbols: _glGenVertexArrays, _glReleaseShaderCompiler, _glBindVertexArray` #570

Closed barracuda156 closed 1 month ago

barracuda156 commented 1 month ago

These do not seem to exist on earlier macOS:

Undefined symbols:
  "_glGenVertexArrays", referenced from:
      _init_sdl_glsl_window in cava-sdl_glsl.o
  "_glReleaseShaderCompiler", referenced from:
      _init_sdl_glsl_window in cava-sdl_glsl.o
  "_glBindVertexArray", referenced from:
      _init_sdl_glsl_window in cava-sdl_glsl.o
ld: symbol(s) not found

Should we try using mesa or these symbols can be just enabled conditionally instead?

karlstav commented 1 month ago

10.6? Snow leopard? 2009?

barracuda156 commented 1 month ago

10.6? Snow leopard? 2009?

It is still used on earlier Intel (10.6 is the last macOS to run on CoreDuo machines) and PowerPC (ppc code was removed in 10.7).

karlstav commented 1 month ago

Right, I forgot about the vintage computer enthusiasts. Some of those old macs were quite sturdy.

If you are not planning to use the opengl output you can disable it in the configure step with

--disable-output-sdl-glsl

barracuda156 commented 1 month ago

@karlstav Thank you! Will try it and let you know.

barracuda156 commented 1 month ago

@karlstav Yes, that worked :)