* Running gdb-14.0.50 @ 2023-03-22 22:56 Nemo Nusquam 2023-03-23 13:05 ` Rainer Orth 0 siblings, 1 reply; 4+ messages in thread From: Nemo Nusquam @ 2023-03-22 22:56 UTC (permalink / raw) To: gdb I downloaded gdb-14.0.50.20230322 and built it with the following configuration script. ABI=64 \ CFLAGS='-m64 -g3 -O0' \ CXXFLAGS='-m64 -g3 -O0' \ SHELL=/usr/bin/bash \ AR=/usr/bin/gar \ AS=/usr/bin/as \ CC=/home/build/gcc/64/bin/gcc \ CXX=/home/build/gcc/64/bin/g++ \ ../gdb-14.0.50.20230322/configure \ --with-gmp-prefix=/usr/local \ --with-mpfr-prefix=/usr/local \ --host=sparcv9-sun-solaris11 \ --build=sparcv9-sun-solaris11 \ --enable-64-bit-bfd \ --enable-tui \ --with-curses \ --disable-bootstrap \ --disable-gprof \ --disable-gprofng \ --disable-gold \ --disable-gas \ --disable-sim Despite specifying both host and build as sparcv9, when I invoke against a simple C binary, the following happens. ../../gdb-14.0.50.20230322/gdb/arch-utils.c:753: internal-error: initialize_current_architecture: Selection of initial architecture failed A problem internal to GDB has been detected, Is there any other option that will specify a build for sparcv9 alone. No other architecture will be debugged on this machine (T2000 running Solaris 11.3). Thank you. N. ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Running gdb-14.0.50 2023-03-22 22:56 Running gdb-14.0.50 Nemo Nusquam @ 2023-03-23 13:05 ` Rainer Orth 2023-03-27 0:53 ` Nemo Nusquam 0 siblings, 1 reply; 4+ messages in thread From: Rainer Orth @ 2023-03-23 13:05 UTC (permalink / raw) To: Nemo Nusquam via Gdb; +Cc: Nemo Nusquam Nemo Nusquam via Gdb <gdb@sourceware.org> writes: > I downloaded gdb-14.0.50.20230322 and built it with the following > configuration script. > > ABI=64 \ No need for this unless you're using in-tree gmp/mpfr. > CFLAGS='-m64 -g3 -O0' \ > CXXFLAGS='-m64 -g3 -O0' \ I've asked this before: why do you need a gdb with full debug info? If running into problems, start with a bare-minimum configuration, i.e. omit CFLAGS/CXXFLAGS completely. If your gcc doesn't create 64-bit binaries by default, better use CC='gcc -m64' CXX='g++ -m64'. > SHELL=/usr/bin/bash \ If you really need another shell during the build (although the Solaris 11.3 /bin/sh, which is ksh93, should be good enough), specify CONFIG_SHELL instead. > AR=/usr/bin/gar \ No need for this: the build should be fine with either Solaris ar or GNU ar. If it's not, please file a bug report. > AS=/usr/bin/as \ Again: not used in the gdb build (and not the best way for gcc, either). Omit. > --host=sparcv9-sun-solaris11 \ > --build=sparcv9-sun-solaris11 \ Here's your problem: this is a triple gdb knows nothing about, thus the error when starting. The real thing is called sparcv9-sun-solaris2.11 (i.e. 2.11 instead of 11) and it's admittedly quite unfortunate that config.guess doesn't get this right on its own. Just specify --build=sparcv9-sun-solaris2.11; the other two (host and target) are set implicitly from that. > --enable-64-bit-bfd \ > --enable-tui \ > --with-curses \ I never had a need for any of those. If you do, please explain. > --disable-bootstrap \ Again: gcc only; omit. > Despite specifying both host and build as sparcv9, when I invoke against a > simple C binary, the following happens. > > ../../gdb-14.0.50.20230322/gdb/arch-utils.c:753: internal-error: > initialize_current_architecture: Selection of initial architecture failed > A problem internal to GDB has been detected, > > Is there any other option that will specify a build for sparcv9 alone. No > other architecture will be debugged on this machine (T2000 running Solaris > 11.3). Use the correct triple (and omit anything not strictly necessary) and you should be fine. Rainer -- ----------------------------------------------------------------------------- Rainer Orth, Center for Biotechnology, Bielefeld University ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Running gdb-14.0.50 2023-03-23 13:05 ` Rainer Orth @ 2023-03-27 0:53 ` Nemo Nusquam 2023-03-27 14:00 ` Rainer Orth 0 siblings, 1 reply; 4+ messages in thread From: Nemo Nusquam @ 2023-03-27 0:53 UTC (permalink / raw) To: Rainer Orth; +Cc: gdb On 2023-03-23 09:05, Rainer Orth wrote: > Nemo Nusquam via Gdb<gdb@sourceware.org> writes: > >> I downloaded gdb-14.0.50.20230322 and built it with the following >> configuration script. >> >> ABI=64 \ > No need for this unless you're using in-tree gmp/mpfr. Okay -- I removed this line. >> CFLAGS='-m64 -g3 -O0' \ >> CXXFLAGS='-m64 -g3 -O0' \ > I've asked this before: why do you need a gdb with full debug info? If > running into problems, start with a bare-minimum configuration, > i.e. omit CFLAGS/CXXFLAGS completely. If your gcc doesn't create 64-bit > binaries by default, better use CC='gcc -m64' CXX='g++ -m64'. Please read the section on the GDB Wiki: Building GDB Natively (https://sourceware.org/gdb/wiki/BuildingNatively), where these flags are specified. I moved -m64 to CC/CXX. >> SHELL=/usr/bin/bash \ > If you really need another shell during the build (although the Solaris > 11.3 /bin/sh, which is ksh93, should be good enough), specify > CONFIG_SHELL instead. Okay -- I removed this line. >> AR=/usr/bin/gar \ > No need for this: the build should be fine with either Solaris ar or GNU > ar. If it's not, please file a bug report. I removed this option and configure built a Makefile that invoked sparcv9-sun-solaris11-ar, so I put it back in. >> AS=/usr/bin/as \ > Again: not used in the gdb build (and not the best way for gcc, > either). Omit. Okay -- I removed this line. >> --host=sparcv9-sun-solaris11 \ >> --build=sparcv9-sun-solaris11 \ > Here's your problem: this is a triple gdb knows nothing about, thus the > error when starting. The real thing is called sparcv9-sun-solaris2.11 > (i.e. 2.11 instead of 11) and it's admittedly quite unfortunate that > config.guess doesn't get this right on its own. Just specify > --build=sparcv9-sun-solaris2.11; the other two (host and target) are set > implicitly from that. Okay -- I added --build=sparcv9-sun-solaris2.11. > >> --enable-64-bit-bfd \ >> --enable-tui \ >> --with-curses \ > I never had a need for any of those. If you do, please explain. These are leftovers from a very old script. They were removed. >> --disable-bootstrap \ > Again: gcc only; omit. Okay -- I removed the option. >> Despite specifying both host and build as sparcv9, when I invoke against a >> simple C binary, the following happens. >> >> ../../gdb-14.0.50.20230322/gdb/arch-utils.c:753: internal-error: >> initialize_current_architecture: Selection of initial architecture failed >> A problem internal to GDB has been detected, >> >> Is there any other option that will specify a build for sparcv9 alone. No >> other architecture will be debugged on this machine (T2000 running Solaris >> 11.3). > Use the correct triple (and omit anything not strictly necessary) and > you should be fine. > > Rainer > Here is my final configuration script: CFLAGS='-g3 -O0' \ CXXFLAGS='-g3 -O0' \ CC="/home/build/gcc/64/bin/gcc -m64" \ CXX="/home/build/gcc/64/bin/g++ -m64" \ ../gdb-14.0.50.20230322/configure \ --with-gmp-prefix=/usr/local \ --with-mpfr-prefix=/usr/local \ --build=sparcv9-sun-solaris2.11 \ --disable-binutils \ --disable-gold \ --disable-gprof \ --disable-gas \ --disable-intl \ --disable-ld \ --disable-sim And here is the configuration reported by the resulting binary. This GDB was configured as follows: configure --host=sparcv9-sun-solaris2.11 --target=sparcv9-sun-solaris2.11 --with-auto-load-dir=$debugdir:$datadir/auto-load --with-auto-load-safe-path=$debugdir:$datadir/auto-load --with-expat --with-gdb-datadir=/usr/local/share/gdb (relocatable) --with-jit-reader-dir=/usr/local/lib/gdb (relocatable) --without-libunwind-ia64 --with-lzma --without-babeltrace --without-intel-pt --without-xxhash --without-python --without-python-libdir --without-debuginfod --with-curses --without-guile --without-amd-dbgapi --disable-source-highlight --enable-threading --enable-tui --with-separate-debug-dir=/usr/local/lib/debug (relocatable) ("Relocatable" means the directory can be moved with the GDB installation tree, and GDB will still find it.) Thank you. Sincerely, N. ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Running gdb-14.0.50 2023-03-27 0:53 ` Nemo Nusquam @ 2023-03-27 14:00 ` Rainer Orth 0 siblings, 0 replies; 4+ messages in thread From: Rainer Orth @ 2023-03-27 14:00 UTC (permalink / raw) To: Nemo Nusquam; +Cc: gdb Nemo Nusquam <cym224@gmail.com> writes: >>> CFLAGS='-m64 -g3 -O0' \ >>> CXXFLAGS='-m64 -g3 -O0' \ >> I've asked this before: why do you need a gdb with full debug info? If >> running into problems, start with a bare-minimum configuration, >> i.e. omit CFLAGS/CXXFLAGS completely. If your gcc doesn't create 64-bit >> binaries by default, better use CC='gcc -m64' CXX='g++ -m64'. > > Please read the section on the GDB Wiki: Building GDB Natively > (https://sourceware.org/gdb/wiki/BuildingNatively), where these flags > are specified. This page is obviously targeted at GDB developers. Besides, it states > Of course, you can still do a simple ./configure && make, but you > might actually want to disable a few projects that don't need to be > built (and that take a long time to build). Unless you need to debug gdb with itself, you don't need to build with -g3 -O0. So far, you haven't stated what's your goal in building from a git clone instead of just building the latest release as a regular user. >>> AR=/usr/bin/gar \ >> No need for this: the build should be fine with either Solaris ar or GNU >> ar. If it's not, please file a bug report. > > I removed this option and configure built a Makefile that invoked > sparcv9-sun-solaris11-ar, so I put it back in. You absolutely need to remove all remnants of tools with *-*-solaris11-*: those are using an invalid configure triple and thus of no use at all, or rather harmful. If that were sparcv9-sun-solaris2.11-ar, that's just an alternative name of GNU ar. >>> --enable-64-bit-bfd \ >>> --enable-tui \ >>> --with-curses \ >> I never had a need for any of those. If you do, please explain. > > These are leftovers from a very old script. They were removed. I known: one tends to carry forward stuff like this years after they may have been necessary. That's why I insist of starting with the most basic configure invocation possible and only add stuff if you 200% know what/why you are doing that. > Here is my final configuration script: > > CFLAGS='-g3 -O0' \ > CXXFLAGS='-g3 -O0' \ > CC="/home/build/gcc/64/bin/gcc -m64" \ > CXX="/home/build/gcc/64/bin/g++ -m64" \ > ../gdb-14.0.50.20230322/configure \ > --with-gmp-prefix=/usr/local \ > --with-mpfr-prefix=/usr/local \ > --build=sparcv9-sun-solaris2.11 \ > --disable-binutils \ > --disable-gold \ > --disable-gprof \ > --disable-gas \ > --disable-intl \ > --disable-ld \ > --disable-sim Looks sensible indeed, although should should consider removing CFLAGS/CXXFLAGS for serious use: the defaults can help performance tremendously ;-) > And here is the configuration reported by the resulting binary. [...] > ("Relocatable" means the directory can be moved with the GDB installation > tree, and GDB will still find it.) Indeed: both gdb and gcc can be for quite some time. Rainer -- ----------------------------------------------------------------------------- Rainer Orth, Center for Biotechnology, Bielefeld University ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-03-27 14:00 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2023-03-22 22:56 Running gdb-14.0.50 Nemo Nusquam 2023-03-23 13:05 ` Rainer Orth 2023-03-27 0:53 ` Nemo Nusquam 2023-03-27 14:00 ` Rainer Orth
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).