[MacPorts] #63864: libgcc-devel @12-20211028 does not install libgcc_s on macOS 12 with arm64 processor
MacPorts
noreply at macports.org
Mon Nov 8 16:47:06 UTC 2021
#63864: libgcc-devel @12-20211028 does not install libgcc_s on macOS 12 with arm64
processor
-----------------------------------------+--------------------------
Reporter: bal-agates | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.7.1
Keywords: libgcc_s, numpy, matplotlib | Port: libgcc-devel
-----------------------------------------+--------------------------
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.
- build of py39-matplotlib failed (reference this builder
report[https://build.macports.org/builders/ports-
12_arm64-builder/builds/4711/steps/install-port/logs/stdio])
- py39-numpy built but failed to load within python (#63814).
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?
--
Ticket URL: <https://trac.macports.org/ticket/63864>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list