FreeBSD zipper.catspoiler.org 15.0-CURRENT FreeBSD 15.0-CURRENT #107 main-n266973-ca39f23347e1: Sat Dec 16 03:11:23 PST 2023 dl@zipper.catspoiler.org:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64 cc --version FreeBSD clang version 17.0.6 (https://github.com/llvm/llvm-project.git llvmorg-17.0.6-0-g6009708b4367) Target: x86_64-unknown-freebsd15.0 Thread model: posix InstalledDir: /usr/bin Building either editors/openoffice-4 ore editors/openoffice-devel on either amd64 or i386 fails with these linker errors: ld: error: version script assignment of 'UDK_3_0_0' to symbol 'GetVersionInfo' f ailed: symbol not defined ld: error: version script assignment of 'UDK_3.1' to symbol '_ZN9salhelper9Condi tionC1ERN3osl5MutexE' failed: symbol not defined c++: error: linker command failed with exit code 1 (use -v to see invocation) gmake[1]: *** [/wrkdirs/usr/ports/editors/openoffice-devel/work/aoo-4.2.0/main/s olenv/gbuild/LinkTarget.mk:330: /wrkdirs/usr/ports/editors/openoffice-devel/work /aoo-4.2.0/main/solver/420/unxfbsdi.pro/workdir/LinkTarget/Library/libuno_salhel pergcc3.so] Error 1 Building with older llvm from ports avoids this problem. I will try to put together an upstream bug report.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=f25b169ac89578f18a6e480d4d84284bb8085316 commit f25b169ac89578f18a6e480d4d84284bb8085316 Author: Don Lewis <truckman@FreeBSD.org> AuthorDate: 2023-12-18 08:52:02 +0000 Commit: Don Lewis <truckman@FreeBSD.org> CommitDate: 2023-12-18 08:56:38 +0000 editors/openoffice-*: Unbreak build on 15.0-CURRENT clang version 17.0.6 causes linker errors that break the build on 15.0-CURRENT. Work around this by building with an older llvm from ports. PR: 275820 editors/openoffice-4/Makefile | 8 ++++++++ editors/openoffice-devel/Makefile | 8 ++++++++ 2 files changed, 16 insertions(+)
It turns out that the --no-undefined-version change is the culprit. In this particular case, GetVersionInfo is only exported by the Windows and OS/2 builds, so I have no idea why it is including in the .map file being used by the linker. Both _ZN9salhelper9ConditionC1ERN3osl5MutexE and _ZN9salhelper9ConditionC2ERN3osl5MutexE are listed in the .map (do accommodate a name mangling variation?) but only one of those symbols is defined.