Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 942414 - net-dns/pdns-recursor-5.1.2 - /.../lib.rs.h:1086:(.text+<snip>): undefined reference to rust::cxxbridge1::String::String()
Summary: net-dns/pdns-recursor-5.1.2 - /.../lib.rs.h:1086:(.text+<snip>): undefined re...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Sven Wegener
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: lto
  Show dependency tree
 
Reported: 2024-10-28 18:19 UTC by Toralf Förster
Modified: 2025-01-18 23:45 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info.txt (emerge-info.txt,22.51 KB, text/plain)
2024-10-28 18:19 UTC, Toralf Förster
Details
emerge-history.txt.xz (emerge-history.txt.xz,91.21 KB, application/x-xz)
2024-10-28 18:19 UTC, Toralf Förster
Details
environment (environment,122.29 KB, text/plain)
2024-10-28 18:19 UTC, Toralf Förster
Details
etc.clang.tar.xz (etc.clang.tar.xz,1.14 KB, application/x-xz)
2024-10-28 18:19 UTC, Toralf Förster
Details
etc.portage.tar.xz (etc.portage.tar.xz,27.54 KB, application/x-xz)
2024-10-28 18:19 UTC, Toralf Förster
Details
logs.tar.xz (logs.tar.xz,21.38 KB, application/x-xz)
2024-10-28 18:19 UTC, Toralf Förster
Details
net-dns:pdns-recursor-5.1.2:20241028-053124.log.xz (net-dns:pdns-recursor-5.1.2:20241028-053124.log.xz,51.29 KB, application/x-xz)
2024-10-28 18:19 UTC, Toralf Förster
Details
qlist-info.txt.xz (qlist-info.txt.xz,91.67 KB, application/x-xz)
2024-10-28 18:19 UTC, Toralf Förster
Details
temp.tar.xz (temp.tar.xz,26.62 KB, application/x-xz)
2024-10-28 18:19 UTC, Toralf Förster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2024-10-28 18:19:00 UTC
too long lines were shrinked:

x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I/usr/include/lua5.1 -I./ext/yahttp -pthread     -O3 -Wall -pthread -DSYSCONFDIR=\"/etc/powerdns\"   -I./ext/json11 -I./ext/protozero/include -I./settings -I./settings -I./settings/rust/src -I./ext/yahttp  -DBOOST_CONTAINER_USE_STD_EXCEPTIONS 
make[2]: Leaving directory '/var/tmp/portage/net-dns/pdns-recursor-5.1.2/work/pdns-recursor-5.1.2'
make[2]: Entering directory '/var/tmp/portage/net-dns/pdns-recursor-5.1.2/work/pdns-recursor-5.1.2'
/bin/sh ./libtool  --tag=CXX   --mode=link x86_64-pc-linux-gnu-g++ -std=c++17 -DSYSCONFDIR=\"/etc/powerdns\" -DPKGLIBDIR=\"/usr/lib64/pdns-recursor\" -DLOCALSTATEDIR=\"/var/run\" -DNODCACHEDIRNOD=\"/var/lib/powerdns/nod\" -DNODCACHEDIRUDR=\"/var/lib/powerdns/udr\" -fPIE -DPIE -U_FORTIFY_SOURCE -D_FO
libtool: link: x86_64-pc-linux-gnu-g++ -std=c++17 -DSYSCONFDIR=\"/etc/powerdns\" -DPKGLIBDIR=\"/usr/lib64/pdns-recursor\" -DLOCALSTATEDIR=\"/var/run\" -DNODCACHEDIRNOD=\"/var/lib/powerdns/nod\" -DNODCACHEDIRUDR=\"/var/lib/powerdns/udr\" -fPIE -DPIE -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-b
/usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/net-dns/pdns-recursor-5.1.2/temp/ccnMRnak.ltrans17.ltrans.o: in function `pdns::rust::settings::rec::Recursorsettings::Recursorsettings()':
/var/tmp/portage/net-dns/pdns-recursor-5.1.2/work/pdns-recursor-5.1.2/settings/rust/lib.rs.h:1086:(.text+0x4a9): undefined reference to `rust::cxxbridge1::String::String()'
/usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/net-dns/pdns-recursor-5.1.2/temp/ccnMRnak.ltrans17.ltrans.o:/var/tmp/portage/net-dns/pdns-recursor-5.1.2/work/pdns-recursor-5.1.2/settings/rust/lib.rs.h:1086:(.text+0x4b2): undefined reference to `rust::cxxb
/usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/net-dns/pdns-recursor-5.1.2/temp/ccnMRnak.ltrans17.ltrans.o:/var/tmp/portage/net-dns/pdns-recursor-5.1.2/work/pdns-recursor-5.1.2/settings/rust/lib.rs.h:1086:(.text+0x4be): undefined reference to `rust::cxxb

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 23.0_no_multilib_hardened-20241018-153501

  The attached etc.portage.tar.xz has all details.
  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-10
 [2] x86_64-pc-linux-gnu-14 *
clang version 19.1.2
llvm-config: 19.1.2
Python 3.12.7
go version go1.23.2 linux/amd64
  (none found)
Available Ruby profiles:
  [1]   ruby32 (with Rubygems) *
Available Rust versions:
  [1]   rust-bin-1.82.0
  [2]   rust-1.82.0 *
The following VMs are available for generation-2:
1)	Eclipse Temurin JDK 11.0.25_p9 [openjdk-bin-11]
2)	Eclipse Temurin JDK 17.0.13_p11 [openjdk-bin-17]
*)	Eclipse Temurin JDK 21.0.5_p11 [openjdk-bin-21]
4)	Eclipse Temurin JDK 8.432_p06 [openjdk-bin-8]
Available Java Virtual Machines:
  [1]   openjdk-bin-8 
  [2]   openjdk-bin-11 
  [3]   openjdk-bin-17 
  [4]   openjdk-bin-21  system-vm

The Glorious Glasgow Haskell Compilation System, version 9.2.8

  HEAD of ::gentoo
commit cebf099aa96cec7b42ceecbb171b3bdb0502594a
Author: Repository mirror & CI <repomirrorci@gentoo.org>
Date:   Sun Oct 27 23:33:26 2024 +0000

    2024-10-27 23:33:25 UTC

emerge -qpvO =net-dns/pdns-recursor-5.1.2
[ebuild  N    ] net-dns/pdns-recursor-5.1.2  USE="dnstap -debug -snmp -sodium -systemd -test -valgrind" LUA_SINGLE_TARGET="lua5-1 -lua5-3 -lua5-4 -luajit"
Comment 1 Toralf Förster gentoo-dev 2024-10-28 18:19:01 UTC
Created attachment 907142 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2024-10-28 18:19:02 UTC
Created attachment 907143 [details]
emerge-history.txt.xz
Comment 3 Toralf Förster gentoo-dev 2024-10-28 18:19:03 UTC
Created attachment 907144 [details]
environment
Comment 4 Toralf Förster gentoo-dev 2024-10-28 18:19:04 UTC
Created attachment 907145 [details]
etc.clang.tar.xz
Comment 5 Toralf Förster gentoo-dev 2024-10-28 18:19:05 UTC
Created attachment 907146 [details]
etc.portage.tar.xz
Comment 6 Toralf Förster gentoo-dev 2024-10-28 18:19:06 UTC
Created attachment 907147 [details]
logs.tar.xz
Comment 7 Toralf Förster gentoo-dev 2024-10-28 18:19:07 UTC
Created attachment 907148 [details]
net-dns:pdns-recursor-5.1.2:20241028-053124.log.xz
Comment 8 Toralf Förster gentoo-dev 2024-10-28 18:19:08 UTC
Created attachment 907149 [details]
qlist-info.txt.xz
Comment 9 Toralf Förster gentoo-dev 2024-10-28 18:19:09 UTC
Created attachment 907150 [details]
temp.tar.xz
Comment 10 Matt Jolly gentoo-dev 2024-11-07 09:16:32 UTC
hitting this on 1.82.0, 1.81.0-bin gcc 14.

It looks like there's some rust -> c++ stuff going on here which might be the cause?

Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/14/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /var/tmp/portage/sys-devel/gcc-14.2.1_p20240921/work/gcc-14-20240921/configure --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/14 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/14/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/14 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/14/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/14/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/14/include/g++-v14 --disable-silent-rules --disable-dependency-tracking --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/14/python --enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --disable-libunwind-exceptions --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 14.2.1_p20240921 p1' --with-gcc-major-version-only --enable-libstdcxx-time --enable-lto --disable-libstdcxx-pch --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-multilib --with-multilib-list=m32,m64 --disable-fixed-point --enable-targets=all --enable-libgomp --disable-libssp --disable-libada --enable-cet --disable-systemtap --disable-valgrind-annotations --disable-vtable-verify --disable-libvtv --with-zstd --without-isl --enable-default-pie --enable-host-pie --enable-host-bind-now --enable-default-ssp --disable-fixincludes --with-build-config=bootstrap-cetncluded-gettext --disable-libunwind-exceptions --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 14.2.1_p20240921 p1' --with-gcc-major-version-only --enable-libstdcxx-time --enable-lto --disable-libstdcxx-pch --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-multilib --with-multilib-list=m32,m64 --disable-fixed-point --enable-targets=all --enable-libgomp --disable-libssp --disable-libada --enable-cet --disable-systemtap --disable-valgrind-annotations --disable-vtable-verify --disable-libvtv --with-zstd --without-isl --enable-default-pie --enable-host-pie --enable-host-bind-now --enable-default-ssp --disable-fixincludes --with-build-config=bootstrap-cet
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 14.2.1 20240921 (Gentoo 14.2.1_p20240921 p1)
Comment 11 Larry the Git Cow gentoo-dev 2025-01-18 20:58:37 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20bf7f5e75297d1cafaa05e6c9970f4493e94ad6

commit 20bf7f5e75297d1cafaa05e6c9970f4493e94ad6
Author:     Sven Wegener <swegener@gentoo.org>
AuthorDate: 2025-01-18 20:50:24 +0000
Commit:     Sven Wegener <swegener@gentoo.org>
CommitDate: 2025-01-18 20:58:33 +0000

    net-dns/pdns-recursor: filter LTO flags
    
    We build a library using rust that gets linked into the main binary, which is
    incompatible with LTO.
    
    See filter-lto usage in cargo.eclass.
    
    Closes: https://bugs.gentoo.org/927177
    Closes: https://bugs.gentoo.org/942414
    Signed-off-by: Sven Wegener <swegener@gentoo.org>

 net-dns/pdns-recursor/pdns-recursor-5.0.9-r1.ebuild | 1 +
 net-dns/pdns-recursor/pdns-recursor-5.1.3-r1.ebuild | 1 +
 net-dns/pdns-recursor/pdns-recursor-5.2.0.ebuild    | 3 ++-
 3 files changed, 4 insertions(+), 1 deletion(-)