Opened 4 years ago
Closed 19 months ago
#60665 closed defect (fixed)
transmission @3.00 +daemon: error: Build input file cannot be found: .../build/Release/libevent.a
Reported by: | pdvnl | Owned by: | kurthindenburg (Kurt Hindenburg) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.6.2 |
Keywords: | Cc: | i0ntempest | |
Port: | transmission |
Description
port clean --all transmission && port -dv install transmission +daemon
:info:build ** BUILD FAILED ** :info:build The following build commands failed: :info:build Libtool /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_transmission/transmission/work/transmission-3.00/build/Release/libdht.a normal x86_64 :info:build (1 failure) :info:build Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_transmission/transmission/work/transmission-3.00" && /usr/bin/xcodebuild -target "Transmission" -configuration Release build INSTALL_PATH=/Applications/MacPorts OBJROOT="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_transmission/transmission/work/transmission-3.00/build/" SYMROOT="/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_transmission/transmission/work/transmission-3.00/build/" MACOSX_DEPLOYMENT_TARGET=10.13 ARCHS=x86_64 SDKROOT="" GCC_VERSION=com.apple.compilers.llvm.clang.1_0 CLANG_CXX_LIBRARY="libc++" :info:build Exit code: 65
Attachments (2)
Change History (16)
Changed 4 years ago by pdvnl
comment:1 Changed 4 years ago by pdvnl
Port: | transmission added |
---|
comment:2 Changed 4 years ago by kencu (Ken)
it's looking for an in-tree libevent, which presumably doesn't exist:
:info:build error: Build input file cannot be found: '/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_transmission/transmission/work/transmission-3.00/build/Release/libevent.a'
comment:3 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
Owner: | set to kurthindenburg |
---|---|
Status: | new → assigned |
Summary: | transmission transmission @3.00 +daemon fails to build on 10.13 → transmission @3.00 +daemon: error: Build input file cannot be found: .../build/Release/libevent.a |
The port already has a dependency on the libevent port and does a reinplace that looks like it's supposed to make the port use MacPorts libevent.a instead of the built-in one. So maybe that's not working anymore.
Would be better if transmission used MacPorts libevent.dylib instead of libevent.a.
comment:4 Changed 4 years ago by kurthindenburg (Kurt Hindenburg)
Cc: | i0ntempest added |
---|
comment:5 Changed 4 years ago by i0ntempest
Probably needs some additional patching. I'll try to find some time to investigate
comment:6 Changed 4 years ago by i0ntempest
I can't find where it's referencing to that file. After patch and reinplace the build should use macports provided libraries. No idea why it's not doing that in 10.13.
comment:8 Changed 4 years ago by burdges (Jeff Burdges)
I noticed this build failure with
port upgrade transmission
when not using +daemon
If I manually ran the build command it gives then it complained about lacking libevent.a so I managed to fix it with
cp locate libevent.a
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_transmission/transmission/work/transmission-3.00/build/Release/libevent.a
I’m unsure if these mac os binaries must be statically linked (ugh) but if not then maybe it should be linking the .so instead.
I'd imagined this failure to be related to the Transmission.app, like why else should it be using the libevent.a instead of a dynamic link, but I guess not if the +daemon build encounters this failure too.
comment:9 Changed 4 years ago by kencu (Ken)
manipulating Xcode builds is an order of magnitude more complicated than most everything else.
Best luck I've had is setting things up with sudo port patch
, then opening the Xcode workspace directly with Xcode, changing what needs to be changed if you can sort it out, and then diffing the folder to see exactly what changed in the guts of the workspace.
comment:10 Changed 4 years ago by kencu (Ken)
well, I did exactly what I mentioned -- altered the Xcode project in Xcode, replacing libevent.a with libevent.dylib.
It's a big, ugly, messy, patch. Surely there is a better way. But it works, at least on my system, with /opt/local ..
Changed 4 years ago by kencu (Ken)
Attachment: | patch-transmission-libevent.diff added |
---|
ugly patch to use libevent.dylib -- there must be a better way
comment:11 Changed 4 years ago by i0ntempest
I can't seem to get this patch to work, is it supposed to be used with all existing patches?
comment:13 Changed 4 years ago by kencu (Ken)
smartest thing to do here might be to symlink our libevet.a into the right spot pre-build with a Portfile command, rather than fight with xcode.
comment:14 Changed 19 months ago by i0ntempest
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Should be fixed in the update to v4.0.3
/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_transmission/transmission/main.log