delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2015/07/01/17:56:24

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
X-Recipient: djgpp AT delorie DOT com
Message-ID: <55946256.4090804@gmx.de>
Date: Wed, 01 Jul 2015 23:57:42 +0200
From: "Juan Manuel Guerrero (juan DOT guerrero AT gmx DOT de) [via djgpp AT delorie DOT com]" <djgpp AT delorie DOT com>
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; de; rv:1.9.2.13) Gecko/20101206 SUSE/3.1.7 Thunderbird/3.1.7
MIME-Version: 1.0
To: djgpp AT delorie DOT com
Subject: Re: gdb 7.0 and coff debug format failing.
References: <5591A7A2 DOT 70505 AT gmx DOT de> <95c7ca20-6371-403a-a3dd-99ef7c081785 AT googlegroups DOT com> <83mvzh2lnu DOT fsf AT gnu DOT org> <2e24b1c9-cff4-4154-9ad2-dc4bbe4d3ec6 AT googlegroups DOT com> <83egkt2ilw DOT fsf AT gnu DOT org>
In-Reply-To: <83egkt2ilw.fsf@gnu.org>
X-Provags-ID: V03:K0:5kG3tJY4oV+91d9axPSDy8KtfwKq7QQk2Azn82ma0JS54zLhJvK
eq6QOOh78ex5kjIiFco5UPHAkf/kubdRrc9RZ/dNCV5H25Yfk1BMp74vQISymhAj1NbaCzW
Elyakmf6t/CbLWe8/P58uKYYfgMsY6ZTAPR+ZNozhEo+rx+cVCz3CQthpOwuitbIltMvjkR
Z6YBVe0bIQPXYRp7XsHZA==
X-UI-Out-Filterresults: notjunk:1;V01:K0:eC3kScwP8ko=:W71MIVW3HhAL1yPE+GORFd
vbLp7domDqfKh0UEovnyLvQrY039hv5NSELziBd7Ay5vI3ZkGFiQXHo5v/P1xU1uKkQtksybJ
zO+l1YuMjY6vLS+zDQ8uARF8K4mSZqGPlfZfvFW9dFDQJvvkZ9fB3kat5Kv30RFUvvpruQcI6
Ds0KwizPqnv5T589UxGbcEGtB0UCPE/Lz6ZBb4oIIKYxFv2NUdZ3Df7Dki4DS/lJl0eFNnAfS
ymZCb/3v/SJqZc2xFD9Ib9IDOq+wcgVKt7k1PFTl1WPN+dcJvaYmRNx8y3LbvZ1URSl3eMgXd
P00hU4DFZlkdXC/PwycL0iOEXR/5cBGe09R9hOsod6bNohfJAvBUjd7VOkwp8Qj5HDjgrFCuV
BU7COxWmY60P24Ho3U8bR39kaiRetItblj9Qxbf55Olv5BNJJNG3/3xPjEjYWjNss5RNJd0K2
tCYjTr99VzkouR5MAzup93PuLOwlcc6MpKf8qoKyFzYk+Gh+fjhBHKFTAY/u2yWyLeuk0JFmo
j+jIQQAG52a0BZwdURSy8C5pDUoUR1d2F9LDgpt8utUPl4lv9OISABQg0ArVyXTegyeX4m4Xn
CheF3JmgHK7/4gdoGksVT8x2tgXXnnR7f4jIRFO0XEdJKx23lMSQBueWcPxmMNkhwHI5E9eT5
ezRT4yphZP8XG6T+O7eye2a9QdD4Zj7cgbCxG8mkIrCd7UT26Yqa5a2qXX16JfMuXe3I=
Reply-To: djgpp AT delorie DOT com

Am 30.06.2015 19:47, schrieb Eli Zaretskii (eliz AT gnu DOT org):
>> Date: Tue, 30 Jun 2015 10:11:44 -0700 (PDT)
>> From: "Juan Manuel Guerrero (juan DOT guerrero AT gmx DOT de)"<djgpp AT delorie DOT com>
>>
>> Can you tell me what binutils you are using?  I do not know if it is of any importance but we can try some older version that bnu22b.
>
> I have Binutils 2.19 here.

OFYI, I have recompiled gdb771 using gcc510, bnu225br2 and djdev205.
Then I have compiled the following test program using gcc346b, bnu225br2
and djdev205:

--------------------  b.c start --------------------
#include <stdlib.h>
#include <string.h>

char *allocate_string(const char *message)
{
   char *string = NULL;
   size_t bytes = -1;

   bytes = strlen(message);

   string = malloc(bytes);
   if (string)
   {
     size_t i;
     for (i = 0; i < bytes; i++)
       string[i] = message[i];
     string[i] = '\0';
   }

   return string;
}
--------------------  b.c end --------------------

--------------------  a.c start --------------------
#include <stdio.h>

char *allocate_string(const char *message);

int do_print(const char *message)
{
   int bytes;

   bytes = printf("This is the message:  \"%s\"\n", message);

   return bytes;
}

int print(const char *message)
{
   int bytes;

   bytes = do_print(allocate_string(message));

   return bytes;
}

int main(void)
{
   char message[] = "qwertz";
   int bytes;

   bytes = print(message);

   return bytes;
}
--------------------  a.c end --------------------

--------------------  gdb.txt start --------------------
b main
b 16
b 7
b b.c : 6
r
info source
--------------------  gdb.txt end --------------------

I am still not able to step into certain functions.  Specially if the functions
are defined in different files.  I was able to step from main into print().
But I was not able to step from inside print() into do_print().  Please note
that the argument of do_print is the function allocate_string() defined in b.c.

But if I write a control file for gdb like gdb.txt then it becomes possible to
stop in every function no matter in which file it is defined.  This may be a
little bit cumbersome but it seems to work.  I know that this is certainly not
a "complex" program but I think that it demonstrates that a combination of gcc346b,
bnu225br2, gdb771b (to be recompiled with djdev205) and djdev205 may be usefull
to continue developing emacs.  Of course, in the end it must really be tried by
compiling emacs.  Anything else will never give a definitive answer to this issue.

Regards,
Juan M. Guerrero

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019