[PATCH] Add GMP as a prerequisite for GDB
Sebastian Huber
sebastian.huber at embedded-brains.de
Tue Dec 15 07:42:48 UTC 2020
On 15/12/2020 04:59, Chris Johns wrote:
> Sorry, I have been distracted with other things....
>
> On 14/12/20 5:55 pm, Sebastian Huber wrote:
>> On 11/12/2020 14:00, Sebastian Huber wrote:
>>
>>> ---
>>> bare/config/devel/gmp-6.1.0.cfg | 18 ++++++++++
>>> rtems/config/6/rtems-default.bset | 1 +
>>> rtems/config/7/rtems-default.bset | 1 +
>>> source-builder/config/gmp.cfg | 60 +++++++++++++++++++++++++++++++
>>> 4 files changed, 80 insertions(+)
>>> create mode 100644 bare/config/devel/gmp-6.1.0.cfg
>>> create mode 100644 source-builder/config/gmp.cfg
>> This change breaks the GCC build:
>>
>> https://lists.rtems.org/pipermail/devel/2020-December/063751.html
>>
>> I have no idea how to fix this. So, currently I am not able to do regular tool
>> chain updates which help to catch issues early. For example:
>>
>> https://lists.rtems.org/pipermail/devel/2020-December/063751.html
> Why is xgcc now dependent on a share libgmp? A FreeBSD gcc does not show any
> shared library dependencies other than the standard OS ones. What happens if you
> configure the GMP package that is built for gdb with --disable-shared (assuming
> it supports it)?
With the RSB master on Linux I have:
/opt/rtems/6/bin/v850-rtems6-gdb:
libexpat.so.1 => /opt/rtems/6/lib/libexpat.so.1
(0x00007fca6ef2b000)
On another Linux machine I see this:
ldd /tmp/sh/rtems-no-gmp/6/bin/sparc-rtems6-gdb
libexpat.so.1 => /usr/lib64/libexpat.so.1 (0x00007fc74b881000)
On FreeBSD is see no dynamic libexpat:
/home/user/rtems/6/bin/sparc-rtems6-gdb:
libutil.so.9 => /lib/libutil.so.9 (0x8009fc000)
libncursesw.so.8 => /lib/libncursesw.so.8 (0x800a13000)
libm.so.5 => /lib/libm.so.5 (0x800a74000)
libpython2.7.so.1 => /usr/local/lib/libpython2.7.so.1 (0x800aa6000)
libdl.so.1 => /usr/lib/libdl.so.1 (0x800c9a000)
libintl.so.8 => /usr/local/lib/libintl.so.8 (0x800c9e000)
liblzma.so.5 => /usr/lib/liblzma.so.5 (0x800cab000)
libiconv.so.2 => /usr/local/lib/libiconv.so.2 (0x800cd7000)
libc++.so.1 => /usr/lib/libc++.so.1 (0x800dd5000)
libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x800ea5000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x800ec7000)
libthr.so.3 => /lib/libthr.so.3 (0x800ee1000)
libc.so.7 => /lib/libc.so.7 (0x800f0e000)
>
> Is gdb picking up a share library reference to it as well?
>
> I have avoided any shared libraries with our tools and I would like to keep it
> that way if possible. It is simpler for a number of reasons and what you have
> tripped over is one of them.
I tried to use
--with-expat-type=static -with-gmp-type=static
it still picks up the shared libraries on Linux.
>
> Another confusing thing is xgcc not using the in tree source for GMP. I assume
> that is still present as git master shows it is still in the gcc common recipe.
> Is gcc picking up a shared lib over the in tree source?
I didn't touch the GCC configuration. Before the GMP change for GDB, GCC
used the source tree GMP library.
--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.huber at embedded-brains.de
phone: +49-89-18 94 741 - 16
fax: +49-89-18 94 741 - 08
Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
More information about the devel
mailing list