A couple weeks ago, I recommended that GSL configure be patched to include "-no_fixup_chains" for Mac OS. After GSL 2.8 release, I received several complaints that this broke GSL builds on older Mac OS versions, or more specifically, with older Mac linker versions. https://github.com/macports/macports-ports/pull/24195
Therefore I must now request that this patch be dropped from GSL configure. A new bugfix release might be warranted. Meanwhile, affected GSL users can easily remove the offending flag by removing "$wl-no_fixup_chains" from one line in configure. There is an ongoing conversation about the correct way to manage this linker flag in libtool. https://savannah.gnu.org/support/?111069 On Tue, May 14, 2024 at 10:58 PM Dave Allured - NOAA Affiliate < [email protected]> wrote: > GSL 2.7.101 with Apple clang 14 on Mac OS gives two of these warnings: > >> ld: warning: -undefined dynamic_lookup may not work with chained fixups > > > Web searching finds more than one solution. I like the following for > simplicity. In aclocal.m4, change this line as follows. It is guarded for > certain Mac software versions, so it should not impact other platforms. > Patch, then autoconf of course, to generate a new configure. This should > avoid chained fixups by expanding the use of lazy binding. > > < _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; >> > _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup >> $wl-no_fixup_chains' ;; > > > This patch was inspired by the same fix a year ago, in another package: > https://github.com/lcm-proj/lcm/pull/416 > "Compared to using chained fix-ups, the only potential downside for us is > a slightly larger dylib" > > You might think that something like this should already be in GNU autoconf > and aclocal. My guess is that GNU is simply not caught up with recent Mac > issues, for some reason. > <snip>
