At Mon, 21 Mar 2022 09:50:16 -0700, "Greg A. Woods" <woods%planix.ca@localhost> wrote: Subject: fonts/harfbuzz: weird link failure on macOS 12.1 > > I'm seeing this weird link failure on macOS 12.1 (with Xcode 13.3, > python39, and ninja-1.10.2). > > (The warning about macOS versions is weird too!) > > The most weird part is that it's expecting to find this missing symbol > in an already _previously_ installed library! > > The symbol is found in the newly built version of that same library: > > # nm ./output/src/libharfbuzz-gobject.0.dylib | fgrep hb_gobject_draw_funcs_get_type > 00000000000180d0 b __ZZ30hb_gobject_draw_funcs_get_typeE7type_id > 00000000000056d0 T _hb_gobject_draw_funcs_get_type > > Perhaps ninja isn't safe to use outside a chroot, or at least without > first removing the target package? (This is from during a > pkg_rolling-replace run.) Indeed, that is the problem. The harfbuzz build system is not safe for pkg_rolling-replace (at least not without a chroot sandbox). It finds the installed libraries from the still installed previous version and tries to link with them, and especially since it doesn't use anything sensible for library version numbers, it runs into backwards compatability problems with itself. Renaming the installed libraries so they couldn't be found and rebuilding the package solved the problem. -- Greg A. Woods <gwoods%acm.org@localhost> Kelowna, BC +1 250 762-7675 RoboHack <woods%robohack.ca@localhost> Planix, Inc. <woods%planix.com@localhost> Avoncote Farms <woods%avoncote.ca@localhost>
Attachment:
pgp5AyPKo8AJv.pgp
Description: OpenPGP Digital Signature