Opened 12 months ago
Last modified 12 months ago
#68319 assigned defect
cargo: links with old library libgit2.1.6.dylib
Reported by: | rmottola (Riccardo) | Owned by: | MarcusCalhoun-Lopez (Marcus Calhoun-Lopez) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | lion | Cc: | mascguy (Christopher Nielsen), dbevans (David B. Evans), herbygillot (Herby Gillot) |
Port: | cargo, libgit2 |
Description
:info:build CARGO_TARGET_DIR=/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_librsvg/librsvg/work/librsvg-2.56.3/target \ :info:build cargo --locked build --verbose --release --lib \ :info:build && cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_librsvg/librsvg/work/librsvg-2.56.3 && /bin/sh ./libtool --tag=CC --mode=link /opt/local/bin/clang-mp-16 -isysroot/ -arch x86_64 -lobjc -Wl,-syslibroot,/ -arch x86_64 -o librsvg_c_api.la _rsvg_dummy.lo && mv /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_librsvg/librsvg/work/librsvg-2.56.3/target/x86_64-apple-darwin/release/librsvg.a .libs/librsvg_c_api.a :info:build dyld: Library not loaded: /opt/local/lib/libgit2.1.6.dylib :info:build Referenced from: /opt/local/bin/cargo :info:build Reason: image not found
Why is libgit needed at all?
Attachments (1)
Change History (3)
Changed 12 months ago by rmottola (Riccardo)
comment:1 Changed 12 months ago by ryandesign (Ryan Carsten Schmidt)
Cc: | mascguy dbevans herbygillot added |
---|---|
Owner: | changed from mascguy to MarcusCalhoun-Lopez |
Port: | cargo libgit2 added; librsvg removed |
Summary: | librsvg fails to build Lion → cargo: links with old library libgit2.1.6.dylib |
cargo declares a dependency on port:libgit2. It was added two years ago by @herbygillot but the commit message does not say why.
libgit2 used to provide /opt/local/lib/libgit2.1.6.dylib but now it provides /opt/local/lib/libgit2.1.7.dylib. It was the responsibility of whoever updated libgit2 three weeks ago to revbump all ports that link with the library whenever the library install_name changes, and in fact that did happen moments later. What version of the cargo port is installed? (port installed cargo
) You should not see this problem with cargo @0.72.2_1 or later.
On my Monterey system cargo does not link with the libgit2 dylib but on yours evidently it does. I'm not sure why this difference exists.
In addition to the dependency on the libgit2 port, cargo uses a distfile called libgit2-sys-0.15.1+1.6.4.crate. I'm not sure why it needs both the libgit2 port and its own bundled copy. Normally in MacPorts we want to use MacPorts copies of libraries, not bundled copies.
comment:2 Changed 12 months ago by mascguy (Christopher Nielsen)
Riccardo, the existing MacPorts binaries for librsvg
should still work. Or are you trying to build it Universal...?
build on 10.7