🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

1 total messages Started by H.Merijn Brand Wed, 15 Jun 2005 16:07
gdb/hpux-threads on HPPA
#1283
Author: H.Merijn Brand
Date: Wed, 15 Jun 2005 16:07
94 lines
5471 bytes
I finally took the time to make gdb-6.3 compile on HP-UX 11.00

This is probably not the way *you* might prefer the patch to be applied, but
without it, it won't compile

=======================================================================
HP-UX 11.00 with gcc-4.0.0/32

--8<---
--- gdb/hpux-thread.c.org       2005-06-15 16:49:37 +0200
+++ gdb/hpux-thread.c   2005-06-15 16:56:30 +0200
@@ -47,6 +47,16 @@
 #include "gdb_stat.h"
 #include "gdbcore.h"

+#include "hppa-tdep.h"
+#undef NUM_REGS                        /* gcc cannot cope with a function call here */
+extern void *memset (void *, int, size_t);
+#ifdef GDB_TARGET_IS_HPPA_20W  /* hppa64 */
+#define NUM_REGS 96
+#else                          /* hppa32 */
+#define NUM_REGS 128
+#endif
+#define FLAGS_REGNUM HPPA_FLAGS_REGNUM
+
 extern int child_suppress_run;

 extern void _initialize_hpux_thread (void);
@@ -286,7 +296,7 @@ hpux_thread_fetch_registers (int regno)
        deprecated_child_ops.to_fetch_registers (regno);
       else
        {
-         unsigned char buf[MAX_REGISTER_SIZE];
+         char buf[MAX_REGISTER_SIZE];
          CORE_ADDR sp;

          sp = (CORE_ADDR) tcb_ptr->static_ctx.sp - 160;
-->8---
One warning left:

gcc -B/usr/local/pa20_32/bin -c -mpa-risc-2-0 -g -O2   -Dvfork=fork  -I. -I. -I./config -DLOCALEDIR="\"/usr/local/pa20_32/share/locale\"" -DHAVE_CONFIG_H -I./../include/opcode -I./../readline/.. -I../bfd -I./../bfd -I./../include -I../intl -I./../intl  -DMI_OUT=1 -DTUI=1 -Wimplicit -Wreturn-type -Wcomment -Wtrigraphs -Wformat -Wparentheses -Wpointer-arith -Wuninitialized -Wformat-nonliteral -Wunused-label -Wunused-function  -I./osf-share \
        -I./osf-share/HP800 -I/usr/include/dce \
        ./hpux-thread.c
./hpux-thread.c: In function 'hpux_thread_store_registers':
./hpux-thread.c:375: warning: cast to pointer from integer of different size

=======================================================================
HP-UX 11.00 with gcc-4.0.0/64

I happen to have a ncurses 64bit lib that gdb finds, but does not like:

gcc64 -B/usr/local/pa20_64/bin -mpa-risc-2-0 -g -O2   -Dvfork=fork     \
        -o gdb gdb.o libgdb.a \
           ../bfd/libbfd.a ../readline/libreadline.a ../opcodes/libopcodes.a  ../libiberty/libiberty.a     -lncurses -lm  ../libiberty/libiberty.a
libgdb.a(hppa-hpux-tdep.o): In function `hppa_hpux_som_find_global_pointer':
: undefined reference to `som_solib_get_got_by_pc'
libgdb.a(tui-io.o): In function `tui_puts':
: undefined reference to `__getcury'
libgdb.a(tui-winsource.o): In function `tui_show_source_line':
: undefined reference to `__getcury'
collect2: ld returned 1 exit status

When run by hand with -lcurses, I get 

a5:/pro/3gl/GNU/gdb-6.3/gdb 160 > gcc64 -B/usr/local/pa20_64/bin -mpa-risc-2-0 -g -O2   -Dvfork=fork -o gdb gdb.o libgdb.a ../bfd/libbfd.a ../readline/libreadline.a ../opcodes/libopcodes.a  ../libiberty/libiberty.a     -lcurses -lm  ../libiberty/libiberty.a
libgdb.a(hppa-hpux-tdep.o): In function `hppa_hpux_som_find_global_pointer':
: undefined reference to `som_solib_get_got_by_pc'
collect2: ld returned 1 exit status

I had to add

--8<---
CORE_ADDR
som_solib_get_got_by_pc (CORE_ADDR addr)
{
  return (pa64_solib_get_got_by_pc (addr));
}
-->8---

to pa64solib.c

a5:/pro/3gl/GNU/gdb-6.3/gdb 190 > gcc64 -B/usr/local/pa20_64/bin -mpa-risc-2-0 -g -O2 -Dvfork=fork -o gdb gdb.o libgdb.a ../bfd/libbfd.a ../readline/libreadline.a ../opcodes/libopcodes.a ../libiberty/libiberty.a -lcurses -lm ../libiberty/libiberty.a
a5:/pro/3gl/GNU/gdb-6.3/gdb 191 >

:) :)



-- 
H.Merijn Brand        Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using Perl 5.6.2, 5.8.0, 5.8.5, & 5.9.2  on HP-UX 10.20, 11.00 & 11.11,
 AIX 4.3 & 5.2, SuSE 9.2 & 9.3, and Cygwin. http://www.cmve.net/~merijn
Smoking perl: http://www.test-smoke.org,    perl QA: http://qa.perl.org
 reports  to: smokers-reports@perl.org,                perl-qa@perl.org
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads