[MacPorts] #57797: OpenBLAS @0.3.4_1 forces system AR and RANLIB but this errors on older systems
MacPorts
noreply at macports.org
Thu Dec 20 18:02:00 UTC 2018
#57797: OpenBLAS @0.3.4_1 forces system AR and RANLIB but this errors on older
systems
-----------------------+---------------------------------
Reporter: kencu | Owner: NicosPavlov
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: snowleopard leopard
Port: openblas |
-----------------------+---------------------------------
Description changed by kencu:
Old description:
> The Portfile does this:
> {{{
> # Using system ones as default is set to bin/gcc-ar which does not
> # exist, and using gcc-mp ones end up in an error about a missing
> # plugin. (see ticket #38551 for example)
> build.args "AR=/usr/bin/ar RANLIB=/usr/bin/ranlib"
> }}}
> but on some systems, that results in the following, because the system
> cctools are too old to understand the objects coming out of the newer
> compilers (usually clang-3.9+):
> {{{
> ar: creating archive ../libopenblas-r1.a
> /usr/bin/ranlib: object: ../libopenblas-r1.a(comatcopy.o) malformed
> object (unknown load command 2)
> /usr/bin/ar: internal ranlib command failed
> make[1]: *** [libs] Error 1
> make[1]: Leaving directory
> `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_OpenBLAS/OpenBLAS/work/OpenBLAS-0.3.4/interface'
> }}}
>
> I don't presently have a well-thought-out plan for what to do with this
> issue. This force went into the Portfile a long time ago for a gcc
> related issue. Deleting the line forcing AR and RANLIB works well enough.
> Which systems crossed with which compilers has not been fully worked out
> yet.
New description:
The Portfile does this:
{{{
# Using system ones as default is set to bin/gcc-ar which does not
# exist, and using gcc-mp ones end up in an error about a missing
# plugin. (see ticket #38551 for example)
build.args "AR=/usr/bin/ar RANLIB=/usr/bin/ranlib"
}}}
but on some systems, that results in the following, because the system
cctools are too old to understand the objects coming out of the newer
compilers (usually clang-3.9+):
{{{
ar: creating archive ../libopenblas-r1.a
/usr/bin/ranlib: object: ../libopenblas-r1.a(comatcopy.o) malformed object
(unknown load command 2)
/usr/bin/ar: internal ranlib command failed
make[1]: *** [libs] Error 1
make[1]: Leaving directory
`/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_OpenBLAS/OpenBLAS/work/OpenBLAS-0.3.4/interface'
}}}
I don't presently have a well-thought-out plan for what to do with this
issue. This force went into the Portfile a long time ago for a gcc related
issue. Probably need to have a dependency on cctools and then force the
build to use those, but which systems crossed with which compilers has not
been fully worked out yet.
--
--
Ticket URL: <https://trac.macports.org/ticket/57797#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list