Compiling binutils-2.25.1 failed
Willem Offermans
Willem at Offermans.Rompen.nl
Wed Apr 20 09:00:15 UTC 2016
Dear Dimitry and FreeBSD friends,
On Mon, Apr 18, 2016 at 06:49:43PM +0200, Dimitry Andric wrote:
> On 18 Apr 2016, at 14:43, Willem Offermans <Willem at Offermans.Rompen.nl> wrote:
> >
> > On Fri, Apr 15, 2016 at 12:27:07AM +0200, Dimitry Andric wrote:
> >> On 14 Apr 2016, at 14:10, Willem Offermans <Willem at Offermans.Rompen.nl> wrote:
> ...
> >> For some reason this doesn't seem to be picked up by your ports build.
> >> For example, it is possible that your build picks up an ansidecl.h from
> >> somewhere else, so search your system for duplicate copies of this
> >> header.
> >>
> >> Also, can you preprocess the file with -E, or use -save-temps to save
> >> the intermediate result? Then you should be able to see what the macro
> >> expands to, if anything.
> >>
> >> -Dimitry
> >>
> >
> > I already found a solution by applying `pkg install devel/binutils`.
> >
> > But to solve this issue, I did a search for the file ansidecl.h, as you
> > suggested. There were several:
> >
> > /usr/local/include/ansidecl.h
> > /usr/src/contrib/binutils/include/ansidecl.h
> > /usr/src/contrib/gcclibs/include/ansidecl.h
> > /usr/src/contrib/gdb/include/ansidecl.h
> > /usr/ports/devel/binutils/work/binutils-2.25.1/include/ansidecl.h
> >
> > I would assume that the last one would have preference above the others. Am
> > I wrong?
>
> Depending on the compiler and the flags, there is a chance the version
> in /usr/local/include will be found first. Using "pkg which
> /usr/local/include/ansidecl.h", you might be able to find out which port
> originally installed it.
>
> More current versions of the gcc ports install this header into version-
> specific directories, e.g.:
>
> $ find /usr/local -type f -name ansidecl.h
> /usr/local/lib/gcc48/gcc/i386-portbld-freebsd11.0/4.8.5/plugin/include/ansidecl.h
> /usr/local/lib/gcc47/gcc/i386-portbld-freebsd11.0/4.7.4/plugin/include/ansidecl.h
> /usr/local/lib/gcc49/gcc/i386-portbld-freebsd11.0/4.9.4/plugin/include/ansidecl.h
> /usr/local/lib/gcc5/gcc/i386-portbld-freebsd11.0/5.3.0/plugin/include/ansidecl.h
> /usr/local/lib/gcc6/gcc/i386-portbld-freebsd11.0/6.0.0/plugin/include/ansidecl.h
>
> This makes it less likely to be picked up by accident. If your
> /usr/local/include/ansidecl.h file is not owned by any port, you might
> as well delete it, or move it out of the way.
>
> -Dimitry
>
I renamed /usr/local/include/ansidecl.h to
/usr/local/include/ansidecl.h.save as you indicated. Indeed, binutils now
compiles as it should:
<snip>
The operation will free 30 MiB.
[1/1] Deinstalling binutils-2.25.1_2,1...
[1/1] Deleting files for binutils-2.25.1_2,1: 100%
===> Installing for binutils-2.25.1_2,1
===> Checking if binutils already installed
===> Registering installation for binutils-2.25.1_2,1
Installing binutils-2.25.1_2,1...
===>>> Re-installation of binutils-2.25.1_2,1 complete
</snip>
So one step further to juvenile this old beast.
I will remove /usr/local/include/ansidecl.h.save.
Thank you for your advice.
--
Met vriendelijke groeten,
With kind regards,
Mit freundlichen Gruessen,
De jrus wah,
Will
*************************************
W.K. Offermans
Powered by ....
(__)
\\\'',)
\/ \ ^
.\._/_)
www.FreeBSD.org
More information about the freebsd-ports
mailing list