[MacPorts] #60322: libtorrent-rasterbar: build fails when ccache is enabled
MacPorts
noreply at macports.org
Sun Apr 5 10:32:54 UTC 2020
#60322: libtorrent-rasterbar: build fails when ccache is enabled
------------------------+----------------------------------
Reporter: ryandesign | Owner: dbevans
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.6.2
Keywords: | Port: libtorrent-rasterbar
------------------------+----------------------------------
When the use of ccache is enabled in MacPorts (`configureccache yes` is
set in macports.conf, the ccache port is installed, etc.), MacPorts will
set `CC` to a value containing a space, such as `ccache /usr/bin/clang`.
A [changeset:d64154202f73f594aa482a986e22dcfcbc54c6ac/macports-ports
patch] was recently added to fix [ticket:60261 another problem]:
{{{
#!diff
--- bindings/python/Makefile.am.orig 2020-04-02 18:25:29.000000000
-0700
+++ bindings/python/Makefile.am 2020-04-02 18:28:49.000000000 -0700
@@ -36,7 +36,7 @@
if ENABLE_PYTHON_BINDING
all-local:
- $(PYTHON) $(srcdir)/setup.py build
+ CC=$(CC) $(PYTHON) $(srcdir)/setup.py build
install-exec-local:
$(PYTHON) $(srcdir)/setup.py install @PYTHON_INSTALL_PARAMS@
}}}
These two facts result in a build error when ccache is enabled:
{{{
Making all in python
make[2]: Entering directory `/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-ryandesign-fork_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python'
CC=ccache /usr/bin/clang /opt/local/bin/python3.7 ./setup.py build
clang: error: no such file or directory: 'build'
}}}
If I fix the patch to quote `CC` like this:
{{{
#!diff
--- bindings/python/Makefile.am.orig 2020-04-02 18:25:29.000000000
-0700
+++ bindings/python/Makefile.am 2020-04-02 18:28:49.000000000 -0700
@@ -36,7 +36,7 @@
if ENABLE_PYTHON_BINDING
all-local:
- $(PYTHON) $(srcdir)/setup.py build
+ CC="$(CC)" $(PYTHON) $(srcdir)/setup.py build
install-exec-local:
$(PYTHON) $(srcdir)/setup.py install @PYTHON_INSTALL_PARAMS@
}}}
then the build fails with a different strange error:
{{{
creating build/lib.macosx-10.13-x86_64-3.7
/usr/bin/clang++ /usr/bin/clang -bundle -undefined dynamic_lookup
-L/opt/local/lib -Wl,-headerpad_max_install_names
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/alert.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/converters.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/create_torrent.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/datetime.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/entry.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/error_code.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/fingerprint.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/ip_filter.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/magnet_uri.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/module.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/peer_info.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/session.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/session_settings.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/sha1_hash.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/string.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/torrent_handle.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/torrent_info.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/torrent_status.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/utility.o
build/temp.macosx-10.13-x86_64-3.7/opt/local/var/macports/build
/_Users_rschmidt_macports_macports-ports-svn-trunk-new_net_libtorrent-
rasterbar/libtorrent-rasterbar/work/arvidn-libtorrent-
bc66605/bindings/python/src/version.o -L../../src/.libs -L/opt/local/lib
-L/opt/local/lib -L/opt/local/lib -L/opt/local/lib -ltorrent-rasterbar
-lboost_system-mt -lboost_system-mt -lboost_python37-mt -lssl -lcrypto -o
build/lib.macosx-10.13-x86_64-3.7/libtorrent.cpython-37m-darwin.so
-Wl,-headerpad_max_install_names -arch x86_64 -fvisibility=hidden
-fvisibility-inlines-hidden
ld: can't link with a main executable file '/usr/bin/clang' for
architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
error: command '/usr/bin/clang++' failed with exit status 1
}}}
In other words, compiling succeeds, but linking fails because it's
inexplicably trying to invoke `/usr/bin/clang++ /usr/bin/clang`. I haven't
yet been able to figure out why this is so.
--
Ticket URL: <https://trac.macports.org/ticket/60322>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list