Opened 3 years ago

Closed 3 years ago

#63864 closed defect (fixed)

libgcc-devel @12-20211028 does not install libgcc_s on macOS 12 with arm64 processor

Reported by: bal-agates Owned by: Chris Jones <jonesc@…>
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: libgcc_s, numpy, matplotlib Cc:
Port: libgcc-devel

Description

libgcc-devel installs (7) libraries in /opt/local/lib/libgcc. One of these is libgfortran.5.dylib which references libgcc_s.1.1 which was not installed on my system (macOS 12.0.1 Monterey with arm64 cpu).

% otool -L libgfortran.5.dylib
libgfortran.5.dylib:
	@rpath/libgfortran.5.dylib (compatibility version 6.0.0, current version 6.0.0)
	@rpath/libgcc_s.1.1.dylib (compatibility version 1.0.0, current version 1.1.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1311.0.0)

This caused problems with two other ports I was working with.

I examined the work directory and did find the missing library. I actually found it in two places where all the other libraries were in one place. I do not understand that.

./work/build/gcc/libgcc_s.1.1.dylib
./work/build/aarch64-apple-darwin21/libgcc/libgcc_s.1.1.dylib

Manually copying the second to /opt/local/lib/libgcc fixed the problem with numpy. I haven't yet checked if matplotlib will now build.

I do not understand portfiles well. In the "set dylibs" I see both a libgcc_s.1 and libgcc_s.2. Is the problem that libgcc_s.1.1 needs to be added? I think this portfile is extra complicated because the sources for the arm64 are different than other architectures potentially producing a different list of libraries. If a library isn't found is it ignored? Where does it look? Does a minor version need to be specified?

Change History (1)

comment:1 Changed 3 years ago by Chris Jones <jonesc@…>

Owner: set to Chris Jones <jonesc@…>
Resolution: fixed
Status: newclosed

In 34daf6b4fe37d980c2681b6404bef879fe4011dc/macports-ports (master):

{lib}gcc-devel: Update to 20111107 snapshots
Also include libgcc_s.1.1.dylib in the exported dylib list
Closes: #63864

Note: See TracTickets for help on using tickets.