[MacPorts] #59794: ld64: dyld: Library not loaded: /opt/local/libexec/llvm-3.9/lib/libLTO.dylib (was: py36-scipy crashes during build upon upgrade outdated)

MacPorts noreply at macports.org
Mon Dec 2 18:26:59 UTC 2019


#59794: ld64: dyld: Library not loaded:
/opt/local/libexec/llvm-3.9/lib/libLTO.dylib
------------------------+----------------------
  Reporter:  lpagani91  |      Owner:  jeremyhu
      Type:  defect     |     Status:  assigned
  Priority:  Normal     |  Milestone:
 Component:  ports      |    Version:  2.6.2
Resolution:             |   Keywords:
      Port:  ld64       |
------------------------+----------------------
Changes (by ryandesign):

 * status:  new => assigned
 * cc: michaelld (removed)
 * owner:  (none) => jeremyhu
 * port:  py36-scipy => ld64


Old description:

> Ran port selfupdate followed by port upgrade outdated. It stopped during
> the update of py36-scipy.
> I tried to clean and redo, same, to de-install and re-install, same.
>
> {{{bash-3.2$ sudo port clean py36-scipy
> --->  Cleaning py36-scipy
> bash-3.2$ sudo port upgrade outdated
> --->  Computing dependencies for py36-scipy
> --->  Fetching archive for py36-scipy
> --->  Attempting to fetch
> py36-scipy-1.3.3_0+gfortran+openblas.darwin_16.x86_64.tbz2 from
> http://kmq.jp.packages.macports.org/py36-scipy
> --->  Attempting to fetch
> py36-scipy-1.3.3_0+gfortran+openblas.darwin_16.x86_64.tbz2 from
> https://pek.cn.packages.macports.org/macports/packages/py36-scipy
> --->  Attempting to fetch
> py36-scipy-1.3.3_0+gfortran+openblas.darwin_16.x86_64.tbz2 from
> https://packages.macports.org/py36-scipy
> --->  Fetching distfiles for py36-scipy
> --->  Verifying checksums for py36-scipy
> --->  Extracting py36-scipy
> --->  Configuring py36-scipy
> --->  Building py36-scipy
> Error: Failed to build py36-scipy: command execution failed
> Error: See
> /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports
> .org_macports_release_tarballs_ports_python_py-scipy/py36-scipy/main.log
> for details.
> Error: Follow https://guide.macports.org/#project.tickets to report a
> bug.}}}

New description:

 Ran port selfupdate followed by port upgrade outdated. It stopped during
 the update of py36-scipy.
 I tried to clean and redo, same, to de-install and re-install, same.

 {{{
 bash-3.2$ sudo port clean py36-scipy
 --->  Cleaning py36-scipy
 bash-3.2$ sudo port upgrade outdated
 --->  Computing dependencies for py36-scipy
 --->  Fetching archive for py36-scipy
 --->  Attempting to fetch
 py36-scipy-1.3.3_0+gfortran+openblas.darwin_16.x86_64.tbz2 from
 http://kmq.jp.packages.macports.org/py36-scipy
 --->  Attempting to fetch
 py36-scipy-1.3.3_0+gfortran+openblas.darwin_16.x86_64.tbz2 from
 https://pek.cn.packages.macports.org/macports/packages/py36-scipy
 --->  Attempting to fetch
 py36-scipy-1.3.3_0+gfortran+openblas.darwin_16.x86_64.tbz2 from
 https://packages.macports.org/py36-scipy
 --->  Fetching distfiles for py36-scipy
 --->  Verifying checksums for py36-scipy
 --->  Extracting py36-scipy
 --->  Configuring py36-scipy
 --->  Building py36-scipy
 Error: Failed to build py36-scipy: command execution failed
 Error: See
 /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports
 .org_macports_release_tarballs_ports_python_py-scipy/py36-scipy/main.log
 for details.
 Error: Follow https://guide.macports.org/#project.tickets to report a bug.
 }}}

--

Comment:

 The log says the reason for the crash was:

 {{{
 :info:build collect2: fatal error: ld terminated with signal 6 [Abort
 trap: 6]
 :info:build compilation terminated.
 :info:build dyld: Library not loaded:
 /opt/local/libexec/llvm-3.9/lib/libLTO.dylib
 :info:build   Referenced from: /opt/local/bin/ld
 :info:build   Reason: image not found
 }}}

 It seems your ld is still linked with an llvm 3.9 library, although
 [changeset:0e4830b1bda90e8239b198227a32cb25779b9805/macports-ports llvm
 3.9 was made obsolete]. The
 [changeset:375e6143e2add8b3b52d6060ad32eb78c32d7e96/macports-ports llvm39
 variant was removed from the ld64 port], but the revision was not
 increased, leaving any users who had the port installed with that variant
 with broken installations.

 There are several subports of ld64 that provide different versions of
 ld64. Since you're on Sierra, you're probably using ld64-latest, and you
 could fix the immediate problem by reinstalling ld64-latest with a newer
 llvm variant. (See `port variants ld64-latest` for the available options.)

 However ld64-latest is not actually that new: it currently contains the
 version of ld64 that shipped with Xcode 8.2.1. Your log shows you are
 using Xcode 9.2, so using ld64 from Xcode 8.2.1 with that may not always
 work.

 Until we update ld64-latest to a newer version, it's probably better to
 install the ld64 port with the +ld64_xcode variant, so that MacPorts will
 just use the ld64 from Xcode itself:

 {{{
 sudo port install ld64 +ld64_xcode
 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/59794#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list