Skip to content

Various fixes for macOS

Nirbheek Chauhan requested to merge nirbheek/gst-build:macos-build-fixes into master
New subproject macos-bison-binary to provide bison on macOS

The version of bison that ships with macOS is too old, so we need to
provide our own version of it.

Fixes https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/174
libopenjp2.wrap: Update to v6 to fix macOS build

https://github.com/mesonbuild/wrapdb/pull/138
gst-env: Don't set DYLD_LIBRARY_PATH on macOS

This is not actually needed because everything we build is using
@rpath already, and setting it causes dynamic linker path priority
issues with macOS internals causing *all* programs to fail to run
inside gst-env:

$ vim
dyld: Symbol not found: __cg_jpeg_resync_to_restart
  Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib
  Expected in: /Users/nirbheek/projects/repos/gst-build/_build_macos/subprojects/libjpeg-turbo-2.1.0/libJPEG.dylib
 in /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib
Abort trap: 6

In this case it is caused by libjpeg.dylib, but it can happen with
other dylibs that conflict with dylibs used by macOS internally.

The final fix needed is pixman/pixman!50 (merged). Once that's merged we can enable a compile-only CI for gst-build on macOS.

Edited by Nirbheek Chauhan

Merge request reports