FWIW we only get this issue on arm64 now, e.g.: https://launchpad.net/~mir-team/+archive/ubuntu/rc/+build/30514200
``` /usr/bin/ld: ../libmir-test-assist.a(mmap_wrapper.cpp.o): in function `std::literals::string_literals::operator"" s[abi:cxx11](char const*, unsigned long)': /usr/include/c++/14/bits/basic_string.h:4696:(.text+0x650): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, unsigned long, std::allocator<char> const&)' /usr/bin/ld: /usr/include/c++/14/bits/basic_string.h:4696:(.text+0xa68): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, unsigned long, std::allocator<char> const&)' collect2: error: ld returned 1 exit status ``` -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to binutils in Ubuntu. https://bugs.launchpad.net/bugs/2070302 Title: binutils 2.42.50.20240618-1FTBFS of mir 2.17, undefined references to stdlib with LTO Status in binutils package in Ubuntu: New Status in binutils source package in Oracular: New Bug description: With deps at 2024.06.18 things work: ``` $ git clone https://github.com/canonical/mir.git --depth 1 $ cd mir $ apt build-dep . --snapshot 20240618T000000Z $ dpkg-buildpackage -uc -us ``` Upgrading binutils causes a FTBFS ``` $ apt install binutils # /var/log/apt/history.log Commandline: apt install binutils Upgrade: libctf-nobfd0:amd64 (2.42-4ubuntu2, 2.42.50.20240618-1ubuntu1), libbinutils:amd64 (2.42-4ubuntu2, 2.42.50.20240618-1ubuntu1), binutils-x86-64-linux-gnu:amd64 (2.42-4ubuntu2, 2.42.50.20240618-1ubuntu1), libctf0:amd64 (2.42-4ubuntu2, 2.42.50.20240618-1ubuntu1), binutils-common:amd64 (2.42-4ubuntu2, 2.42.50.20240618-1ubuntu1), libsframe1:amd64 (2.42-4ubuntu2, 2.42.50.20240618-1ubuntu1), libgprofng0:amd64 (2.42-4ubuntu2, 2.42.50.20240618-1ubuntu1), binutils:amd64 (2.42-4ubuntu2, 2.42.50.20240618-1ubuntu1) $ dpkg-buildpackage -uc -us ``` An excerpt from the errors: ``` /usr/bin/c++ -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/root/mir=. -flto=auto -ffat-lto-objects -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fdebug-prefix-map=/root/mir=/usr/src/mir-2.17.0 -Wdate-time -D_FORTIFY_SOURCE=3 -pthread -g -Wall -fno-strict-aliasing -Wnon-virtual-dtor -Wextra -fPIC -Werror -Wno-mismatched-tags -Wno-psabi -flto -ffat-lto-objects -Wno-error=null-dereference -Wno-error=overloaded-virtual -Wno-sign-compare -Wno-error=maybe-uninitialized -Wno-pedantic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -Wl,--as-needed -Wl,--no-undefined "CMakeFiles/miral-test.dir/external_client.cpp.o" "CMakeFiles/miral-test.dir/runner.cpp.o" "CMakeFiles/miral-test.dir/wayland_extensions.cpp.o" "CMakeFiles/miral-test.dir/zone.cpp.o" "CMakeFiles/miral-test.dir/server_example_decoration.cpp.o" "CMakeFiles/miral-test.dir/org_kde_kwin_server_decoration.c.o" "CMakeFiles/miral -test.dir/server-decoration_wrapper.cpp.o" -o ../../bin/miral-test.bin ../libmir-test-assist.a ../../lib/libmiral.so.7 ../../src/miral/libmiral-internal.a /usr/lib/x86_64-linux-gnu/libwayland-client.so /usr/lib/x86_64-linux-gnu/libyaml-cpp.so ../../lib/libmirserver.so.60 /usr/lib/x86_64-linux-gnu/libuuid.so ../../src/platforms/common/server/libserver_platform_common.a ../../lib/libmirplatform.so.28 ../../lib/libmirwayland.so.5 /usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.83.0 /usr/lib/x86_64-linux-gnu/libepoxy.so ../../lib/libmircommon.so.11 /usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.83.0 /usr/lib/x86_64-linux-gnu/libboost_atomic.so.1.83.0 -ldl /usr/lib/x86_64-linux-gnu/libxkbcommon.so ../../lib/libmircore.so.2 /usr/lib/x86_64-linux-gnu/libwayland-server.so ../../src/platforms/common/server/kms-utils/libkms_utils.a /usr/lib/x86_64-linux-gnu/libboost_iostreams.so.1.83.0 /usr/lib/x86_64-linux-gnu/libdrm.so /usr/lib/x86_64-linux-gnu/libEGL.so /usr/lib/x86_64-linux-g nu/libGLESv2.so /usr/lib/x86_64-linux-gnu/libudev.so /usr/lib/x86_64-linux-gnu/libgio-2.0.so /usr/lib/x86_64-linux-gnu/libgobject-2.0.so /usr/lib/x86_64-linux-gnu/libglib-2.0.so /usr/lib/x86_64-linux-gnu/libxcb.so /usr/lib/x86_64-linux-gnu/libxcb-composite.so /usr/lib/x86_64-linux-gnu/libxcb-xfixes.so /usr/lib/x86_64-linux-gnu/libxcb-randr.so /usr/lib/x86_64-linux-gnu/libxcb-render.so /usr/lib/x86_64-linux-gnu/libXcursor.so /usr/lib/x86_64-linux-gnu/liblttng-ust.so /usr/lib/x86_64-linux-gnu/liblttng-ust-common.so /usr/lib/x86_64-linux-gnu/libdl.a /usr/lib/x86_64-linux-gnu/libfreetype.so -latomic /usr/lib/x86_64-linux-gnu/libapparmor.so /usr/lib/x86_64-linux-gnu/libboost_system.so.1.83.0 -lgtest_main ../../libGMock.a -lgtest /usr/bin/ld: /tmp/cccNaqUj.ltrans0.ltrans.o: in function `(anonymous namespace)::ExternalClient::ExternalCli ent() [clone .lto_priv.0]': /usr/src/mir-2.17.0/tests/miral/external_client.cpp:32:(.text+0x343e): warning: the use of `tmpnam' is dangerous, better use `mkstemp' /usr/bin/ld: ../../src/miral/libmiral-internal.a(input_device_config.cpp.o): in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(char)': /usr/include/c++/13/bits/basic_string.h:1388:(.text._ZNKSt8__format14__formatter_fpIcE6formatIDF128_NS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_[_ZNKSt8__format14__formatter_fpIcE6formatIDF128_NS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_]+0x1587): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::push_back(char)' /usr/bin/ld: /usr/include/c++/13/bits/basic_string.h:1388:(.text._ZNKSt8__format14__formatter_fpIcE6formatIeNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_[_ZNKSt8__format14__formatter_fpIcE6formatIeNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_]+0x1524): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::push_back(char)' /usr/bin/ld: /usr/include/c++/13/bits/basic_string.h:1388:(.text._ZNKSt8__format14__formatter_fpIcE6formatIdNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_[_ZNKSt8__format14__formatter_fpIcE6formatIdNS_10_Sink_iterIcEEEENSt20basic_format_contextIT 0_cE8iteratorET_RS7_]+0x1527): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::push_back(char)' /usr/bin/ld: /usr/include/c++/13/bits/basic_string.h:1388:(.text._ZNKSt8__format14__formatter_fpIcE6formatIfNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_[_ZNKSt8__format14__formatter_fpIcE6formatIfNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_]+0x1517): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::push_back(char)' /usr/bin/ld: ../../src/miral/libmiral-internal.a(static_display_config.cpp.o): in function `std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count(std::__shared_count<(__gnu_cxx::_Lock_policy)2> const&)': /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text+0x32c7): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text+0x374c): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text+0x3b86): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text+0x3bac): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_cop y()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text+0x3bd8): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: ../../src/miral/libmiral-internal.a(static_display_config.cpp.o): in function `std::lock_guard<std::mutex>::lock_guard(std::mutex&)': /usr/include/c++/13/bits/std_mutex.h:249:(.text+0x5d68): undefined reference to `std::mutex::lock()' /usr/bin/ld: ../../src/miral/libmiral-internal.a(static_display_config.cpp.o): in function `std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count(std::__shared_count<(__gnu_cxx::_Lock_policy)2> const&)': /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text+0x6bdb): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text+0x744f): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text+0x74b6): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text+0x74f6): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text+0x754f): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: ../../src/miral/libmiral-internal.a(static_display_config.cpp.o):/usr/include/c++/13/bits/shared_ptr_base.h:1078: more undefined references to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' follow /usr/bin/ld: ../../src/miral/libmiral-internal.a(static_display_config.cpp.o): in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > std::__str_concat<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator< char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::value_type const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size_type, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::value_type const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size_type, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::allocator_type const&)': /usr/include/c++/13/bits/basic_string.h:3538:(.text.unlikely+0x607): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::append(char const*, unsigned long)' /usr/bin/ld: /usr/include/c++/13/bits/basic_string.h:3539:(.text.unlikely+0x615): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::append(char const*, uns igned long)' /usr/bin/ld: ../../src/miral/libmiral-internal.a(static_display_config.cpp.o): in function `std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count(std::__shared_count<(__gnu_cxx::_Lock_policy)2> const&)': /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text._ZN4YAML4Node5beginEv[_ZN4YAML4Node5beginEv]+0x47): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text._ZN4YAML4Node5beginEv[_ZN4YAML4Node5beginEv]+0x90): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text._ZN4YAML4Node3endEv[_ZN4YAML4Node3endEv]+0x47): undefined reference to `std::_Sp_counted_ba se<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text._ZN4YAML4Node3endEv[_ZN4YAML4Node3endEv]+0x90): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: /usr/include/c++/13/bits/shared_ptr_base.h:1078:(.text._ZZNK4YAML6detail9node_data3getIiEEPNS0_4nodeERKT_St10shared_ptrINS0_13memory_holderEEENKUlSt4pairIS4_S4_EE_clESC_.isra.0[_ZNK4YAML6detail9node_data3getIiEEPNS0_4nodeERKT_St10shared_ptrINS0_13memory_holderEE]+0x4b): undefined reference to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' /usr/bin/ld: ../../src/miral/libmiral-internal.a(static_display_config.cpp.o):/usr/include/c++/13/bits/share d_ptr_base.h:1078: more undefined references to `std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy()' follow ``` ProblemType: Bug DistroRelease: Ubuntu 24.10 Package: binutils 2.42.50.20240618-1ubuntu1 ProcVersionSignature: Ubuntu 6.8.0-35.35-generic 6.8.4 Uname: Linux 6.8.0-35-generic x86_64 ApportVersion: 2.28.1-0ubuntu4 Architecture: amd64 CasperMD5CheckResult: unknown CloudArchitecture: x86_64 CloudBuildName: server CloudID: lxd CloudName: lxd CloudPlatform: lxd CloudSerial: 20240622 CloudSubPlatform: LXD socket API v. 1.0 (/dev/lxd/sock) Date: Mon Jun 24 17:04:03 2024 ProcEnviron: LANG=C.UTF-8 PATH=(custom, no user) SHELL=/bin/bash TERM=screen-256color XDG_RUNTIME_DIR=<set> SourcePackage: binutils UpgradeStatus: No upgrade log present (probably fresh install) To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/binutils/+bug/2070302/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp