[MacPorts] #60544: reduce: Undefined symbols: _BrotliDecoderDecompress
MacPorts
noreply at macports.org
Fri May 22 22:31:05 UTC 2020
#60544: reduce: Undefined symbols: _BrotliDecoderDecompress
------------------------+----------------------
Reporter: ryandesign | Owner: mbrethen
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.6.2
Keywords: | Port: reduce
------------------------+----------------------
[https://build.macports.org/builders/ports-10.9_x86_64-builder/builds/119577/steps
/install-port/logs/stdio reduce fails to build]:
{{{
/opt/local/bin/clang++-mp-9.0 -pipe -Os -stdlib=libc++ -arch x86_64
-I/opt/local/include/freetype2 -O3 -Wall -L../lib -L/opt/local/lib
-Wl,-headerpad_max_install_names -lintl -arch x86_64 -L/opt/local/lib
-framework Carbon -framework CoreServices -framework ApplicationServices
-o bootstrapreduce bootstrapreduce-arith01.o bootstrapreduce-arith02.o
bootstrapreduce-arith03.o bootstrapreduce-arith04.o bootstrapreduce-
arith05.o bootstrapreduce-arith06.o bootstrapreduce-arith07.o
bootstrapreduce-arith08.o bootstrapreduce-arith09.o bootstrapreduce-
arith10.o bootstrapreduce-arith11.o bootstrapreduce-arith12.o
bootstrapreduce-arith13.o bootstrapreduce-arith14.o bootstrapreduce-
isprime.o bootstrapreduce-allocate.o bootstrapreduce-bytes1.o
bootstrapreduce-char.o bootstrapreduce-cslmpi.o bootstrapreduce-eval1.o
bootstrapreduce-eval2.o bootstrapreduce-eval3.o bootstrapreduce-eval4.o
bootstrapreduce-fns1.o bootstrapreduce-fns2.o bootstrapreduce-fns3.o
bootstrapreduce-inthash.o bootstrapreduce-print.o bootstrapreduce-
cslread.o bootstrapreduce-restart.o bootstrapreduce-lisphash.o
bootstrapreduce-serialize.o bootstrapreduce-sysfwin.o bootstrapreduce-
csl.o bootstrapreduce-fasl.o bootstrapreduce-cslgc.o bootstrapreduce-
preserve.o bootstrapreduce-stubs.o -lFOX-1.6 ../lib/libcrlibm.a
../lib/libffi.a ../lib/libsoftfloat.a /opt/local/lib/libXrandr.a
/opt/local/lib/libXcursor.a /opt/local/lib/libXrender.a
/opt/local/lib/libcurses.a /opt/local/lib/libXext.a
/opt/local/lib/libX11.a /opt/local/lib/libXft.a
/opt/local/lib/libXau.a /opt/local/lib/libXfixes.a
/opt/local/lib/libxcb.a /opt/local/lib/libXdmcp.a
/opt/local/lib/libpng.a /opt/local/lib/libz.a
/opt/local/lib/libbz2.a /opt/local/lib/libfreetype.a
/opt/local/lib/libiconv.a /opt/local/lib/libXft.a
/opt/local/lib/libfontconfig.a /opt/local/lib/libintl.a
/opt/local/lib/libexpat.a -lpthread -ldl
ld: warning: could not create compact unwind for _ffi_call_unix64: does
not use RBP or RSP based frame
Undefined symbols for architecture x86_64:
"_BrotliDecoderDecompress", referenced from:
_sfnt_open_font in libfreetype.a(sfnt.o)
ld: symbol(s) not found for architecture x86_64
}}}
The problem is that reduce is trying to link with MacPorts static
libraries, which means that it must specify all of those libraries'
dependencies. A recent freetype update added a dependency on brotli which
reduce is evidently not using, hence the error about undefined brotli
library symbols.
The fix should be for reduce to use MacPorts dynamic libraries instead of
static libraries. This has numerous other advantages as well.
If there is absolutely no way to fix the build to do that, then the other
possible fix is to instruct the build to also link with the brotli static
libraries /opt/local/lib/libbrotlidec-static.a and /opt/local/lib
/libbrotlicommon-static.a.
--
Ticket URL: <https://trac.macports.org/ticket/60544>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list