[MacPorts] #46040: llvm-3.5, llvm-3.6: libLTO uses libedit, ncurses, zlib without declaring dependencies (was: libgcc build failure)
MacPorts
noreply at macports.org
Sat Nov 29 14:38:38 PST 2014
#46040: llvm-3.5, llvm-3.6: libLTO uses libedit, ncurses, zlib without declaring
dependencies
--------------------------------+----------------------
Reporter: pj@… | Owner: larryv@…
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.3.3
Resolution: | Keywords:
Port: llvm-3.5 llvm-3.6 |
--------------------------------+----------------------
Changes (by larryv@…):
* cc: mww@… (removed)
* cc: jeremyhu@… (added)
* port: libgcc => llvm-3.5 llvm-3.6
Comment:
The OP sent me [[attachment:main.2.log|a complete log]] via email.
{{{
:info:build collect2: error: ld terminated with signal 5 [Trace/BPT trap:
5]
:info:build dyld: Library not loaded: /opt/local/lib/libedit.0.dylib
:info:build Referenced from:
/opt/local/libexec/llvm-3.5/lib/libLTO.dylib
:info:build Reason: image not found
}}}
It’s not clear to me why `libLTO.dylib` links to libedit, and the
`llvm-3.5` port does not declare a dependency on the `libedit` port. On my
system, libLTO uses libraries from `zlib`, `libffi`, `libedit`, and
`ncurses` — only one of which `llvm-3.6` declares a dependency on:
{{{
% otool -L /opt/local/libexec/llvm-3.6/lib/libLTO.dylib
/opt/local/libexec/llvm-3.6/lib/libLTO.dylib:
/opt/local/libexec/llvm-3.6/lib/libLTO.dylib (compatibility
version 0.0.0, current version 0.0.0)
/opt/local/libexec/llvm-3.6/lib/libLLVM-3.6svn.dylib
(compatibility version 0.0.0, current version 0.0.0)
/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current
version 1.2.8)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 1213.0.0)
/opt/local/lib/libffi.6.dylib (compatibility version 7.0.0,
current version 7.4.0)
/opt/local/lib/libedit.0.dylib (compatibility version 1.0.0,
current version 1.51.0)
/opt/local/lib/libncurses.5.dylib (compatibility version 5.0.0,
current version 5.0.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current
version 120.0.0)
% port deps llvm-3.6
Full Name: llvm-3.6 @3.6-r222672_0+assertions
Fetch Dependencies: subversion
Library Dependencies: libffi, libcxx
Runtime Dependencies: perl5, llvm_select
%
}}}
You must have removed `libedit` at some point, and MacPorts didn’t stop
you because `llvm-3.5` doesn’t claim to require it. You can work around
this by reinstalling `libedit`.
Jeremy, does libLTO really use these libraries?
--
Ticket URL: <https://trac.macports.org/ticket/46040#comment:7>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list