public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
From: Dennis Clarke <dclarke@blastwave.org>
To: gcc-help <gcc-help@gcc.gnu.org>
Subject: stage4 bootstrap exits with error 2 on 32-bit Debian arm-linux-gnueabi
Date: Wed, 11 May 2022 11:13:26 -0400	[thread overview]
Message-ID: <e180976c-2822-8b80-4932-0236af9ca9f9@blastwave.org> (raw)


Thanks to help from Jonathan Wakely and Xi Ruoyao the little 32-bit arm
board from ASUS finally did get somewhere past stage1 in the bootstrap.

However after many hours of slowly smashing away at the silly SDIMM in
the ASUS STinkerBoard we get all the way to stage4 ( maybe? ) :


io$ /usr/bin/time -p /usr/bin/nice -n +18 make -j 2 bootstrap4
.
.
.
libtool: compile: 
/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc/xgcc 
-shared-libgcc 
-B/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc -nostdinc++ 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src/.libs 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/libsupc++/.libs 
-B/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/bin/ 
-B/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/lib/ -isystem 
/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/include -isystem 
/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/sys-include 
-D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS 
-D__STDC_LIMIT_MACROS -DPIC -DCAN_SANITIZE_UB=1 -DUBSAN_CAN_USE_CXXABI=1 
-I. -I../../../../gcc-12.1.0/libsanitizer/ubsan -I.. -I 
../../../../gcc-12.1.0/libsanitizer -I 
../../../../gcc-12.1.0/libsanitizer/include -Wall -W 
-Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC 
-fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer 
-funwind-tables -fvisibility=hidden -Wno-variadic-macros 
-I../../libstdc++-v3/include 
-I../../libstdc++-v3/include/armv7l-unknown-linux-gnueabihf 
-I../../../../gcc-12.1.0/libsanitizer/../libstdc++-v3/libsupc++ 
-std=gnu++14 -g -O2 -D_GNU_SOURCE -MT ubsan_value.lo -MD -MP -MF 
.deps/ubsan_value.Tpo -c 
../../../../gcc-12.1.0/libsanitizer/ubsan/ubsan_value.cpp -o 
ubsan_value.o >/dev/null 2>&1
mv -f .deps/ubsan_type_hash_itanium.Tpo .deps/ubsan_type_hash_itanium.Plo
mv -f .deps/ubsan_value.Tpo .deps/ubsan_value.Plo
/bin/bash ../libtool  --tag=CXX   --mode=link 
/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc/xgcc 
-shared-libgcc 
-B/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc -nostdinc++ 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src/.libs 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/libsupc++/.libs 
-B/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/bin/ 
-B/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/lib/ -isystem 
/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/include -isystem 
/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/sys-include    -Wall 
-W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC 
-fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer 
-funwind-tables -fvisibility=hidden -Wno-variadic-macros 
-I../../libstdc++-v3/include 
-I../../libstdc++-v3/include/armv7l-unknown-linux-gnueabihf 
-I../../../../gcc-12.1.0/libsanitizer/../libstdc++-v3/libsupc++ 
-std=gnu++14  -g -O2 -D_GNU_SOURCE -version-info `grep -v '^#' 
../../../../gcc-12.1.0/libsanitizer/ubsan/libtool-version` -ldl -lrt 
-lpthread -lm  -o libubsan.la -rpath /opt/gcc/imed/gcc12/lib 
ubsan_diag.lo ubsan_flags.lo ubsan_handlers.lo ubsan_handlers_cxx.lo 
ubsan_init.lo ubsan_monitor.lo ubsan_type_hash.lo 
ubsan_type_hash_itanium.lo ubsan_type_hash_win.lo ubsan_value.lo 
../sanitizer_common/libsanitizer_common.la 
../interception/libinterception.la 
../libbacktrace/libsanitizer_libbacktrace.la 
../../libstdc++-v3/src/libstdc++.la
libtool: link: 
/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc/xgcc 
-shared-libgcc 
-B/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc -nostdinc++ 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src/.libs 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/libsupc++/.libs 
-B/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/bin/ 
-B/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/lib/ -isystem 
/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/include -isystem 
/opt/gcc/imed/gcc12/armv7l-unknown-linux-gnueabihf/sys-include     -fPIC 
-DPIC -shared -nostdlib /usr/lib/arm-linux-gnueabihf/crti.o 
/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc/crtbeginS.o 
.libs/ubsan_diag.o .libs/ubsan_flags.o .libs/ubsan_handlers.o 
.libs/ubsan_handlers_cxx.o .libs/ubsan_init.o .libs/ubsan_monitor.o 
.libs/ubsan_type_hash.o .libs/ubsan_type_hash_itanium.o 
.libs/ubsan_type_hash_win.o .libs/ubsan_value.o  -Wl,--whole-archive 
../sanitizer_common/.libs/libsanitizer_common.a 
../interception/.libs/libinterception.a 
../libbacktrace/.libs/libsanitizer_libbacktrace.a -Wl,--no-whole-archive 
  -Wl,-rpath 
-Wl,/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src/.libs 
-Wl,-rpath -Wl,/opt/gcc/imed/gcc12/lib 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src/.libs 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libstdc++-v3/libsupc++/.libs 
-ldl -lrt -lpthread ../../libstdc++-v3/src/.libs/libstdc++.so -lm 
-L/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc 
-L/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lc -lgcc_s 
/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc/crtendS.o 
/usr/lib/arm-linux-gnueabihf/crtn.o    -Wl,-soname -Wl,libubsan.so.1 -o 
.libs/libubsan.so.1.0.0
libtool: link: (cd ".libs" && rm -f "libubsan.so.1" && ln -s 
"libubsan.so.1.0.0" "libubsan.so.1")
libtool: link: (cd ".libs" && rm -f "libubsan.so" && ln -s 
"libubsan.so.1.0.0" "libubsan.so")
libtool: link: (cd .libs/libubsan.lax/libsanitizer_common.a && 
/usr/bin/ar x 
"/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libsanitizer/ubsan/../sanitizer_common/.libs/libsanitizer_common.a")
libtool: link: (cd .libs/libubsan.lax/libinterception.a && /usr/bin/ar x 
"/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libsanitizer/ubsan/../interception/.libs/libinterception.a")
libtool: link: (cd .libs/libubsan.lax/libsanitizer_libbacktrace.a && 
/usr/bin/ar x 
"/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libsanitizer/ubsan/../libbacktrace/.libs/libsanitizer_libbacktrace.a")
libtool: link: /usr/bin/ar rc .libs/libubsan.a  ubsan_diag.o 
ubsan_flags.o ubsan_handlers.o ubsan_handlers_cxx.o ubsan_init.o 
ubsan_monitor.o ubsan_type_hash.o ubsan_type_hash_itanium.o 
ubsan_type_hash_win.o ubsan_value.o 
.libs/libubsan.lax/libsanitizer_common.a/sancov_flags.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_allocator.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_allocator_checks.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_allocator_report.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_common.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_common_libcdep.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_coverage_libcdep_new.o .libs/libubsan.lax/libsanitizer_common.a/sanitizer_deadlock_detector1.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_deadlock_detector2.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_errno.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_file.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_flag_parser.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_flags.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_libc.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_libignore.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_linux.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_linux_libcdep.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_linux_s390.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_mac.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_mac_libcdep.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_mutex.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_netbsd.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_openbsd.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_platform_limits_freebsd.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_platform_limits_linux.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_platform_limits_openbsd.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_platform_limits_posix.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_platform_limits_solaris.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_posix.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_posix_libcdep.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_printf.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_procmaps_bsd.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_procmaps_common.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_procmaps_linux.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_procmaps_mac.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_procmaps_solaris.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_solaris.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_stackdepot.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_stacktrace.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_stacktrace_libcdep.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_stacktrace_printer.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_stacktrace_sparc.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_stoptheworld_linux_libcdep.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_stoptheworld_mac.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_suppressions.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_symbolizer.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_symbolizer_libbacktrace.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_symbolizer_libcdep.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_symbolizer_mac.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_symbolizer_posix_libcdep.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_symbolizer_report.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_symbolizer_win.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_termination.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_thread_registry.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_tls_get_addr.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_unwind_linux_libcdep.o .libs/libubsan.lax/libsanitizer_common.a/sanitizer_unwind_win.o 
.libs/libubsan.lax/libsanitizer_common.a/sanitizer_win.o 
.libs/libubsan.lax/libinterception.a/interception_linux.o 
.libs/libubsan.lax/libinterception.a/interception_mac.o 
.libs/libubsan.lax/libinterception.a/interception_type_test.o 
.libs/libubsan.lax/libinterception.a/interception_win.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/atomic.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/bridge.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/cp-demangle.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/dwarf.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/elf.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/fileline.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/mmap.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/mmapio.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/posix.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/sort.o 
.libs/libubsan.lax/libsanitizer_libbacktrace.a/state.o
libtool: link: /usr/bin/ranlib .libs/libubsan.a
libtool: link: rm -fr .libs/libubsan.lax
libtool: link: ( cd ".libs" && rm -f "libubsan.la" && ln -s 
"../libubsan.la" "libubsan.la" )
make[4]: Leaving directory 
'/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libsanitizer/ubsan'
make[4]: Entering directory 
'/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libsanitizer'
make "AR_FLAGS=rc" "CC_FOR_BUILD=gcc -march=armv7-a -mtune=cortex-a17 
-mfpu=vfpv4-d16 -marm" "CFLAGS=-g -O2" "CXXFLAGS=-g -O2 -D_GNU_SOURCE" 
"CFLAGS_FOR_BUILD=-g -O2" "CFLAGS_FOR_TARGET=-g -O2" 
"INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" 
"INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install 
-c" "JC1FLAGS=" "LDFLAGS=" "LIBCFLAGS=-g -O2" "LIBCFLAGS_FOR_TARGET=-g 
-O2" "MAKE=make" "MAKEINFO=/opt/bw/build/gcc-12.1.0/missing makeinfo 
--split-size=5000000 --split-size=5000000   " "PICFLAG=" 
"PICFLAG_FOR_TARGET=" "SHELL=/bin/bash" "RUNTESTFLAGS=" 
"exec_prefix=/opt/gcc/imed/gcc12" 
"infodir=/opt/gcc/imed/gcc12/share/info" 
"libdir=/opt/gcc/imed/gcc12/lib" "prefix=/opt/gcc/imed/gcc12" 
"includedir=/opt/gcc/imed/gcc12/include" "AR=/usr/bin/ar" 
"AS=/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc/as" 
"LD=/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc/collect-ld" 
"LIBCFLAGS=-g -O2" 
"NM=/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/./gcc/nm" 
"PICFLAG=" "RANLIB=/usr/bin/ranlib" "DESTDIR=" DO=all multi-do # make
make[5]: Entering directory 
'/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libsanitizer'
make[5]: Leaving directory 
'/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libsanitizer'
make[4]: Leaving directory 
'/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libsanitizer'
make[3]: Leaving directory 
'/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libsanitizer'
make[2]: Leaving directory 
'/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005/armv7l-unknown-linux-gnueabihf/libsanitizer'
make[1]: Leaving directory 
'/opt/bw/build/gcc-12.1.0_debian_10_armv7l_imed.005'
make: *** [Makefile:30619: bootstrap4] Error 2
Command exited with non-zero status 2
real 56379.30
user 64098.10
sys 3664.37
io$

Yes, this really did take 15 hours and 39 minutes to get to this point.

io$ cat stage_current
stage4
io$

If anyone wonders why the bootstrap4 then the only answer I have is "why 
not?" given what I see at : https://gcc.gnu.org/install/build.html

     make BOOT_CFLAGS='-O' bootstrap

     You can place non-default optimization flags into BOOT_CFLAGS; they
     are less well tested here than the default of ‘-g -O2’, but should
     still work. In a few cases, you may find that you need to specify
     special flags such as -msoft-float here to complete the bootstrap;
     or, if the native compiler miscompiles the stage1 compiler, you may
     need to work around this, by choosing BOOT_CFLAGS to avoid the parts
     of the stage1 compiler that were miscompiled, or by using ‘make
     bootstrap4’ to increase the number of stages of bootstrap.


Well, after some messing around I did need to use --enable-multiarch and
the mysterious --with-float=hard in configure. I wonder if I can get
away with just using those for stage1 ? That is a whole other question
but for now I am curious what the error could be all the way into stage4
as seen above?  Any thoughts?


-- 
Dennis Clarke
RISC-V/SPARC/PPC/ARM/CISC
UNIX and Linux spoken
GreyBeard and suspenders optional

             reply	other threads:[~2022-05-11 15:13 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-11 15:13 Dennis Clarke [this message]
2022-05-11 16:21 ` Jonathan Wakely
2022-05-11 17:52   ` Dennis Clarke
2022-05-11 18:20     ` Jonathan Wakely

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e180976c-2822-8b80-4932-0236af9ca9f9@blastwave.org \
    --to=dclarke@blastwave.org \
    --cc=gcc-help@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).