Guix builds are broken #33177

issue hebasto openend this issue on August 12, 2025
  1. hebasto commented at 1:07 pm on August 12, 2025: member

    The recently merged #32750 broke the Guix build on an aarch64 machine:

     0Running symbol and dynamic library checks...
     1/distsrc-base/distsrc-d3b8a54a8120-x86_64-linux-gnu/build/bin/bitcoind: symbol __divmodti4 from unsupported version GCC_7.0.0(14)
     2/distsrc-base/distsrc-d3b8a54a8120-x86_64-linux-gnu/build/bin/bitcoind: failed IMPORTED_SYMBOLS
     3/distsrc-base/distsrc-d3b8a54a8120-x86_64-linux-gnu/build/bin/bitcoin-qt: symbol __divmodti4 from unsupported version GCC_7.0.0(17)
     4/distsrc-base/distsrc-d3b8a54a8120-x86_64-linux-gnu/build/bin/bitcoin-qt: failed IMPORTED_SYMBOLS
     5/distsrc-base/distsrc-d3b8a54a8120-x86_64-linux-gnu/build/bin/bitcoin-wallet: symbol __divmodti4 from unsupported version GCC_7.0.0(17)
     6/distsrc-base/distsrc-d3b8a54a8120-x86_64-linux-gnu/build/bin/bitcoin-wallet: failed IMPORTED_SYMBOLS
     7/distsrc-base/distsrc-d3b8a54a8120-x86_64-linux-gnu/build/bin/test_bitcoin: symbol __divmodti4 from unsupported version GCC_7.0.0(16)
     8/distsrc-base/distsrc-d3b8a54a8120-x86_64-linux-gnu/build/bin/test_bitcoin: failed IMPORTED_SYMBOLS
     9make[3]: *** [CMakeFiles/check-symbols.dir/build.make:71: CMakeFiles/check-symbols] Error 1
    10make[2]: *** [CMakeFiles/Makefile2:371: CMakeFiles/check-symbols.dir/all] Error 2
    11make[1]: *** [CMakeFiles/Makefile2:378: CMakeFiles/check-symbols.dir/rule] Error 2
    12make: *** [Makefile:179: check-symbols] Error 2
    
  2. Sjors commented at 3:32 pm on August 12, 2025: member
    Also happens on my AMD x86_64 machine (tested on master @ ec484bd5ce437bde29f35a77d23c771468828e25)
  3. henricorico commented at 3:49 pm on August 12, 2025: none
    Hey man, that __divmodti4 error pops up because the GCC version used to build your binaries doesn’t match what your system’s expecting. So the libraries clash, and you get those symbol errors. To fix it, you gotta line up your compiler and system libs — either update your GCC and glibc to newer versions that support those symbols, or use an older compiler version that fits what’s installed. Sometimes switching from gcc to clang helps, ‘cause clang doesn’t always run into these symbol issues. If the build system lets you, you can also try turning off the symbol checks with a flag, just to skip that step. If it’s a mess, the safest bet is to use a Docker container or some isolated environment set up with the right versions, so everything’s in sync. Bottom line: your compiler, libs, and system gotta speak the same language.
  4. fanquake closed this on Aug 13, 2025

  5. fanquake added the label Build system on Aug 13, 2025
  6. fanquake referenced this in commit d6887f0cec on Aug 13, 2025

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-08-21 03:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me