https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116809

            Bug ID: 116809
           Summary: Failure to build GCC on macOS 15 / Xcode 16 for Intel
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: fxcoudert at gcc dot gnu.org
  Target Milestone: ---

The build fails during the compilation of the libgcc_s.1.dylib library with:

:info:build Undefined symbols for architecture x86_64:
:info:build   "___deregister_frame_info", referenced from:
:info:build      -reexported_symbols_list command line option
:info:build   "___deregister_frame_info_bases", referenced from:
:info:build      -reexported_symbols_list command line option
:info:build   "___register_frame_info", referenced from:
:info:build      -reexported_symbols_list command line option
:info:build   "___register_frame_info_bases", referenced from:
:info:build      -reexported_symbols_list command line option
:info:build   "___register_frame_info_table", referenced from:
:info:build      -reexported_symbols_list command line option
:info:build   "___register_frame_info_table_bases", referenced from:
:info:build      -reexported_symbols_list command line option
:info:build   "___register_frame_table", referenced from:
:info:build      -reexported_symbols_list command line option
:info:build ld: symbol(s) not found for architecture x86_64
:info:build collect2: error: ld returned 1 exit status
:info:build make[3]: *** [libgcc_s.1.dylib] Error 1

These symbols are indeed gone from macOS 15's version of libunwind.dylib


A possible work-around is simply to avoid building the old libgcc_s.1.dylib.
It's only there for backward compatibility. The hack below does this:

diff --git a/libgcc/config/i386/t-darwin b/libgcc/config/i386/t-darwin
index 4c18da1efbf..0f61dd53d75 100644
--- a/libgcc/config/i386/t-darwin
+++ b/libgcc/config/i386/t-darwin
@@ -6,4 +6,4 @@ LIB2FUNCS_EXCLUDE = _fixtfdi _fixunstfdi _floatditf
_floatunditf
 SHLIB_MAPFILES += $(srcdir)/config/i386/libgcc-darwin.ver

 # Build a legacy libgcc_s.1
-BUILD_LIBGCCS1 = YES
+# BUILD_LIBGCCS1 = YES


Probably we want to refine this patch, only skip libgcc_s.1.dylib on macOS 15
and later (and retain it on macOS versions where it actually built fine).

Reply via email to