View previous topic :: View next topic |
Author |
Message |
brendlefly62 Apprentice
Joined: 19 Dec 2009 Posts: 150
|
Posted: Thu Oct 03, 2024 4:58 pm Post subject: [solved] mysql-8.0.32-r2 fails to re-build |
|
|
On several arm64 systems I'm running, a routine world update results in a failure to re-build mysql-8.0.32-r2
I've tried running with Code: | MAKEOPTS="-j1" FEATURES=" -getbinpkg -userpriv -distcc -distcc-pump" emerge -1 | but I still get the same result.
This is the error that stands out, to me -- Code: | error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status |
but I don't know what to do about that...
(wgetpastebin link to full log is below with emerge --info and emerge -pqv output)
tail of emerge log -- Code: |
...
[ 22%] Linking CXX executable ../../../../runtime_output_directory/xprotocol_plugin
cd /var/tmp/portage/dev-db/mysql-8.0.32-r2/work/mysql_build/plugin/x/protocol/plugin && /usr/bin/cmake -E cmake_link_script CMakeFiles/xprotocol_plugin.dir/link.txt --verbose=1
/usr/bin/aarch64-unknown-linux-gnu-g++ -O2 -pipe -mcpu=cortex-a76.cortex-a55+crc+crypto -std=c++17 -moutline-atomics -Wall -Wextra -Wformat-security -Wvla -Wundef -Wmissing-format-attribute -Woverloaded-virtual -Wcast-qual -Wimplicit-fallthrough=5 -Wstringop-truncation -Wsuggest-override -Wmissing-include-dirs -Wextra-semi -Wlogical-op -DNDEBUG -g1 -Wl,-O1 -Wl,--as-needed -Wl,--build-id=sha1 -Wl,--no-as-needed -lpthread CMakeFiles/xprotocol_plugin.dir/message_field_chain.cc.o CMakeFiles/xprotocol_plugin.dir/messages_used_by_server.cc.o CMakeFiles/xprotocol_plugin.dir/xprotocol_plugin.cc.o -o ../../../../runtime_output_directory/xprotocol_plugin ../protobuf/libmysqlxmessages.a /usr/lib64/libprotoc.so /usr/lib64/libprotobuf.so
/usr/lib/gcc/aarch64-unknown-linux-gnu/13/../../../../aarch64-unknown-linux-gnu/bin/ld: CMakeFiles/xprotocol_plugin.dir/message_field_chain.cc.o: undefined reference to symbol '_ZN4absl12lts_2024072213base_internal12SpinLockWaitEPSt6atomicIjEiPKNS1_22SpinLockWaitTransitionENS1_14SchedulingModeE'
/usr/lib/gcc/aarch64-unknown-linux-gnu/13/../../../../aarch64-unknown-linux-gnu/bin/ld: /usr/lib64/libabsl_spinlock_wait.so.2407.0.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [plugin/x/protocol/plugin/CMakeFiles/xprotocol_plugin.dir/build.make:132: runtime_output_directory/xprotocol_plugin] Error 1
make[2]: Leaving directory '/var/tmp/portage/dev-db/mysql-8.0.32-r2/work/mysql_build'
make[1]: *** [CMakeFiles/Makefile2:7497: plugin/x/protocol/plugin/CMakeFiles/xprotocol_plugin.dir/all] Error 2
make[1]: Leaving directory '/var/tmp/portage/dev-db/mysql-8.0.32-r2/work/mysql_build'
make: *** [Makefile:156: all] Error 2
* ERROR: dev-db/mysql-8.0.32-r2::gentoo failed (compile phase):
* emake failed
*
* If you need support, post the output of `emerge --info '=dev-db/mysql-8.0.32-r2::gentoo'`,
* the complete build log and the output of `emerge -pqv '=dev-db/mysql-8.0.32-r2::gentoo'`.
* The complete build log is located at '/var/log/portage/dev-db:mysql-8.0.32-r2:20241003-161159.log'.
* For convenience, a symlink to the build log is located at '/var/tmp/portage/dev-db/mysql-8.0.32-r2/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-db/mysql-8.0.32-r2/temp/environment'.
* Working directory: '/var/tmp/portage/dev-db/mysql-8.0.32-r2/work/mysql_build'
* S: '/var/tmp/portage/dev-db/mysql-8.0.32-r2/work/mysql'
>>> Failed to emerge dev-db/mysql-8.0.32-r2, Log file:
>>> '/var/log/portage/dev-db:mysql-8.0.32-r2:20241003-161159.log' |
emerge --info =dev-db/mysql-8.0.32-r2::gentoo http://paste.gentoo.zip/lDuXlY8M
emerge -pqv =dev-db/mysql-8.0.32-r2::gentoo http://paste.gentoo.zip/Yc9WjaSM
/var/log/portage/dev-db:mysql-8.0.32-r2:20241003-161159.log http://paste.gentoo.zip/GtxxS9z6
/var/log/portage/dev-db:mysql-8.0.32-r2:20241003-161159.log (with --no-ansi filter) http://paste.gentoo.zip/ovnTOeSQ
Thanks
Last edited by brendlefly62 on Sat Oct 05, 2024 6:21 pm; edited 1 time in total |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31274 Location: here
|
Posted: Thu Oct 03, 2024 5:57 pm Post subject: |
|
|
See bug #912797. _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
brendlefly62 Apprentice
Joined: 19 Dec 2009 Posts: 150
|
Posted: Thu Oct 03, 2024 7:42 pm Post subject: |
|
|
Thanks, fedeliallalinea. It looks like the primary recommendation in that bug report is that "downgrading dev-libs/protobuf to 21.9 or 21.12 gets around it." However, I also noted comments 11 and 12 further down, that it should also work to emerge mysql with " $ env MYCMAKEARGS="-DWITH_PROTOBUF=bundled" emerge mysql "
So, I created a per-package env set up as follows Code: | # nano /etc/portage/env/mysql-with-protobuf-bundled.conf
MYCMAKEARGS="-DWITH_PROTOBUF=bundled"
and
# nano /etc/portage/package.env/package.env
...
dev-db/mysql ... mysql-with-protobuf-bundled.conf
... |
I then ran simply emerge -av1 mysql --- and it installed cleanly.
Note: the elipses (...) in the mysql line in package.env expands to this -- Code: | dev-db/mysql j4_makeopts.conf nodist_features.conf mysql-with-protobuf-bundled.conf | (I have found mysql doesn't like distcc and that several of my systems need MAKEOPTS constrained)
Any feedback on this alternative to downgrading protobuf ?
what are the consequenses of setting MYCMAKEARGS="-DWITH_PROTOBUF=bundled" ?
and is there any inherent advantage/disadvantage or security implication one way or the other?
thanks again - I hope to understand this a little better before marking it "solved" |
|
Back to top |
|
|
brendlefly62 Apprentice
Joined: 19 Dec 2009 Posts: 150
|
Posted: Sat Oct 05, 2024 6:20 pm Post subject: |
|
|
fedeliallalinea -- thanks anyway |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|