Trying to install binutils-gdb

Arsen Arsenović arsen@aarsen.me
Tue Sep 26 21:49:24 GMT 2023


jacob navia <jacob@jacob.remcomp.fr> writes:

> Hi
> I downloaded the new version of binutils.
>
> To my surprise, it doesn’t work any more, failing with a message that I should get the GMP package.
>
> OK. Tried to download GMP. To my surprise, it isn’t a simple tar ball any
> more. To get the files you need to install a thing called « mercurial » first.

It is.  In fact, that is the first link on the GMP page under Download.
https://gmplib.org/download/gmp/gmp-6.3.0.tar.xz

> OK, tried to download « mercurial » since GMP can’t use git as almost everybody
> else does, or at least provide a git version. You have to get « mercurial ».
>
> OK, that did work, and after typing « hg clone… etc » I got at last a version
> of GMP. There is no configure nor Makefile. You have to run a script called
> ".bootstrap ». Yes, with a dot as first character so « ls » doesn’t see it.
>
> The doc in GMP site says:
> Once you have your own repository, you need to generate some build
> files. Perhaps the script .bootstrap works out-of-the box; if it doesn't, you
> need to install automake (at least version 1.11.6) and autoconf (at least
> version 2.59) and then try .bootstrap again. You may safely ignore the 4 lines
> of warnings from libtoolize.
>
> Do not use autoreconf; it will overwrite config.guess which in turn will cause any builds to be awful.
>
> OK, I started « .bootstrap » and obtained:
> ./.bootstrap: 7: autoreconf: not found
> cp: cannot stat 'ltmain.sh': No such file or directory
> rm: cannot remove 'ltmain.sh': No such file or directory
> mv: cannot stat 'foo': No such file or directory
> cp: cannot stat 'ylwrap': No such file or directory
> rm: cannot remove 'ylwrap': No such file or directory
> mv: cannot stat 'foo': No such file or directory
> cp: cannot stat 'install-sh': No such file or directory
> rm: cannot remove 'install-sh': No such file or directory
> mv: cannot stat 'foo': No such file or directory
> cp: cannot stat 'missing': No such file or directory
> rm: cannot remove 'missing': No such file or directory
> mv: cannot stat 'foo': No such file or directory
> cp: cannot stat 'test-driver': No such file or directory
> rm: cannot remove 'test-driver': No such file or directory
> mv: cannot stat 'foo': No such file or directory
>
> I do not understand why they do not want us to use autoreconf and the first
> thing that THEIR script does is… to call « autoreconf ». Luckily it wasn’t
> found!
> Now I have to download automake and autoconf. Just like that.
>
> Why do I need to do all this just to compile binutils? Can’t this
> complexifying stop somewhere? Why binutils needs GMP now???

They don't.  I'm not sure where you got that.  GDB requires GMP, though.

I assume you downloaded a distribution that contains both Binutils and
GDB.  You can pass --disable-gdb.

> And if that is necessary, why can’t we get some version of GMP that ships with
> the source of binutils WITHOUT requiring that all users of binutils download
> mercurial, automake and autoconf???
>
> Why can’t we keep things simple?
>
> Here are the first 7 lines of the .bootstrap shell script
>   1 #! /bin/sh                                                                              
>   2 
>   3 # We need to remove the "cache", else things are not regenerated properly
>   4 rm -rf autom4te.cache
>   5 
>   6 # for warnings, add: -v -W all
>   7 autoreconf -i -s
>
> So, they tell people not to use autoreconf???

Due to the cache workaround, presumably.

> Well all this things aren’t important, just a decision (that is nowhere
> explained or justified) that makes everything more complicated for everyone.
>
> Jacob

Hope that helps, have a lovely day.
-- 
Arsen Arsenović
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 381 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20230926/885716b8/attachment.sig>


More information about the Binutils mailing list