Index | Thread | Search

From:
Theo Buehler <tb@theobuehler.org>
Subject:
audio/espeak on sparc64 (work around libtool or ld.bfd bug)
To:
ports@openbsd.org
Date:
Sun, 30 Nov 2025 09:11:11 +0100

Download raw body.

Thread
  • Theo Buehler:

    audio/espeak on sparc64 (work around libtool or ld.bfd bug)

audio/espeak doesn't build on sparc64 due to what looks like a bug
in either base libtool or ld.bfd. libtool eats -L options for the
ld.so search directories in the ldconfig -r output, which then causes
linking failures:

/usr/bin/libtool  --tag=CXX   --mode=link c++  -O2 -pipe -static -lm -lpcaudio  -L/usr/local/lib -L/usr/X11R6/lib -o src/speak-ng src/speak-ng.o src/libespeak-ng.la 
...
libtool: link: c++ -o src/.libs/speak-ng -pthread -O2 -pipe src/speak-ng.o -Lsrc/.libs -lm -lpcaudio -lpulse-simple -lpulse -logg -lvorbis -lpthread -liconv /usr/obj/ports/espeak-1.52.0/espeak-ng-1.52.0/src/.libs/libespeak-ng.a -Wl,-rpath-link,/usr/local/lib
[...]
/usr/bin/ld: warning: libxcb.so.4.1, needed by src/.libs/libpcaudio.so.0.1, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libXau.so.10.0, needed by src/.libs/libpcaudio.so.0.1, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libXdmcp.so.11.0, needed by src/.libs/libpcaudio.so.0.1, not found (try using -rpath or -rpath-link)
/usr/local/lib/pulseaudio/libpulsecommon-17.0.so: undefined reference to `xcb_intern_atom_reply'
/usr/local/lib/pulseaudio/libpulsecommon-17.0.so: undefined reference to `xcb_disconnect'
...
Error while executing c++ -o src/.libs/speak-ng -pthread -O2 -pipe src/speak-ng.o -Lsrc/.libs -lm -lpcaudio -lpulse-simple -lpulse -logg -lvorbis -lpthread -liconv /usr/obj/ports/espeak-1.52.0/espeak-ng-1.52.0/src/.libs/libespeak-ng.a -Wl,-rpath-link,/usr/local/lib

https://cranky.work/sparc64/2025-11-11/audio/espeak.log

The below works around this. We could also switch to unconditional
USE_LIBTOOL = gnu (and bump REVISION, I guess).

This depends on the dwz fix I just committed.

Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/espeak/Makefile,v
diff -u -p -r1.29 Makefile
--- Makefile	24 Dec 2024 05:08:17 -0000	1.29
+++ Makefile	30 Nov 2025 07:57:35 -0000
@@ -19,6 +19,11 @@ COMPILER=		base-clang ports-gcc base-gcc
 
 LIB_DEPENDS=		audio/pcaudiolib
 
+.include <bsd.port.arch.mk>
+.if !${PROPERTIES:Mlld}
+USE_LIBTOOL=		gnu
+.endif
+
 USE_GMAKE=		Yes
 NO_TEST=		Yes