* gdbtk ...completely broken?
@ 2022-07-26 8:07 Simon Sobisch
2022-07-27 14:14 ` Keith Seitz
0 siblings, 1 reply; 3+ messages in thread
From: Simon Sobisch @ 2022-07-26 8:07 UTC (permalink / raw)
To: gdb
After checking gdb --help I've wondered about the following:
-w Use the GUI interface.
--nw Do not use the GUI interface.
it took a while to find out that `-w` only applies if GDB is configured
with the GUI option and much more that this relates to --enable-gdbtk.
It seems that the documentation may be improved here:
* for GDB "Mode options" [1] (to at least mention what that GUI is)
* for gdb's --help (ideally not showing -nw / -w if the alter is not
available or an additional line that tells it is ignored)
* for gdb's configure.ac to tell that --enable-gdbtk is about its -w
option doing something
I've then tried to re-built GDB 12.1 using `configure --enable-gdbtk`,
result: everything is built, -w doesn't do anything. Checking
configure.log shows that it did not pick up tcl because it did not found
tclConfig.sh (which isn't in PATH but under /usr/lib64), so re-tried
with an additional --with-tcl; same result, configure.log now shows that
tkConfig.sh is not found (which isn't in PATH but under /usr/lib64), so
additional specified --with-tk which got me through configure with a
build that would use gdbtk.
So far - I consider this a bug in gdb's configure.ac: if --enable-gdbtk
is explicit specified and one of
* the OS does not match (seen in configure.ac when checking) [not sure
that this is necessary / useful as we have the follow-up checks]
* tclConfig.sh is not found
* tkConfig.sh is not found
then it would be most reasonable to abort configure, giving a clear
error message what the issue is.
Going on with `make -j8 -k; make -k`...
make[2]: Entering directory '/tmp/gdb-12.1/build_tk/gdb'
make[2]: *** No rule to make target 'gdbtk-bp.c', needed by 'gdbtk-bp.o'.
make[2]: *** No rule to make target 'gdbtk-cmds.c', needed by
'gdbtk-cmds.o'.
make[2]: *** No rule to make target 'gdbtk-hooks.c', needed by
'gdbtk-hooks.o'.
make[2]: *** No rule to make target 'gdbtk-interp.c', needed by
'gdbtk-interp.o'.
make[2]: *** No rule to make target 'gdbtk-register.c', needed by
'gdbtk-register.o'.
make[2]: *** No rule to make target 'gdbtk-stack.c', needed by
'gdbtk-stack.o'.
make[2]: *** No rule to make target 'gdbtk-varobj.c', needed by
'gdbtk-varobj.o'.
make[2]: *** No rule to make target 'gdbtk-wrapper.c', needed by
'gdbtk-wrapper.o'.
make[2]: *** No rule to make target 'gdbtk.c', needed by 'gdbtk.o'.
make[2]: *** No rule to make target '../libgui/src/libgui.a', needed by
'gdb'.
CXX main.o
../../gdb/main.c:53:10: fatal error: gdbtk/generic/gdbtk.h: No such file
or directory
#include "gdbtk/generic/gdbtk.h"
^~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
rechecked: those files are not part of the gdb distribution and I also
did not found them when checking GDB git either.
Where are the necessary source files?
Should gdb's configure assume they exist or test for them (and again:
error on --enable-gdbtk)?
I also did not found anything about this on the GDB bug database - so:
Do I something totally wrong?
Simon
[1]: https://sourceware.org/gdb/onlinedocs/gdb/Mode-Options.html
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: gdbtk ...completely broken?
2022-07-26 8:07 gdbtk ...completely broken? Simon Sobisch
@ 2022-07-27 14:14 ` Keith Seitz
2022-07-27 15:09 ` Simon Sobisch
0 siblings, 1 reply; 3+ messages in thread
From: Keith Seitz @ 2022-07-27 14:14 UTC (permalink / raw)
To: Simon Sobisch, gdb
On 7/26/22 01:07, Simon Sobisch via Gdb wrote:
> After checking gdb --help I've wondered about the following:
>
> -w Use the GUI interface.
> --nw Do not use the GUI interface.
>
> it took a while to find out that `-w` only applies if GDB is configured with the GUI option and much more that this relates to --enable-gdbtk.
"gdbtk" refers to Insight, which is now located in a different GIT repository.
> Where are the necessary source files?
Clone sourceware.org/git/insight.git and follow the README. It uses submodules
to pull in binutils-gdb.
> Should gdb's configure assume they exist or test for them (and again: error on --enable-gdbtk)?
That's probably something that needs better documentation and perhaps the error.
I'll put it on my TODO list.
Keith
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: gdbtk ...completely broken?
2022-07-27 14:14 ` Keith Seitz
@ 2022-07-27 15:09 ` Simon Sobisch
0 siblings, 0 replies; 3+ messages in thread
From: Simon Sobisch @ 2022-07-27 15:09 UTC (permalink / raw)
To: Keith Seitz; +Cc: gdb
Am 27.07.2022 um 16:14 schrieb Keith Seitz:
> On 7/26/22 01:07, Simon Sobisch via Gdb wrote:
>> After checking gdb --help I've wondered about the following:
>>
>> -w Use the GUI interface.
>> --nw Do not use the GUI interface.
>>
>> it took a while to find out that `-w` only applies if GDB is
>> configured with the GUI option and much more that this relates to
>> --enable-gdbtk.
>
> "gdbtk" refers to Insight, which is now located in a different GIT
> repository.
Ah - I'd say there was a near zero chance to even guess that.
Could you please try to add notes about this in gdb's configure.ac (a
note on --enable-gdbtk about both the project Insight and about "only
for using GDB as Insight submodule" - would help a lot) and possibly on
GDBs mode options docs (something along "-w start GDB in GUI mode
(Insight)") and help output, too?
>
>> Where are the necessary source files?
>
> Clone sourceware.org/git/insight.git and follow the README. It uses
> submodules
> to pull in binutils-gdb.
How to get the files without git (newest insight + GDB [12.1] I've
already on the harddisk)? Is the build info [1] still up-to-date that I
need to build it with a specific tcl/tk version?
https://sourceware.org/insight/downloads.php seems to be quite outdated,
too (ftp links don't work here, instead of git web frontend it points to
cvs)
>> Should gdb's configure assume they exist or test for them (and again:
>> error on --enable-gdbtk)?
>
> That's probably something that needs better documentation and perhaps
> the error.
Thanks, just checking for the necessary source files (before even
checking tcl/tk), then abort looks most reasonable to me.
I guess this is all rooted in the mentioned TODO 2
> Get Insight integrated and accepted into the GDB mainline.
Question on that: Is it likely that this will happen someday?
> I'll put it on my TODO list.
>
> Keith
Thanks again for taking the time to answer!
Simon
[1]: https://sourceware.org/insight/faq.php#q-2.1
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-07-27 15:10 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-26 8:07 gdbtk ...completely broken? Simon Sobisch
2022-07-27 14:14 ` Keith Seitz
2022-07-27 15:09 ` Simon Sobisch
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).