Problem building Binutils for sparc64 target

Ian Lance Taylor ian@wasabisystems.com
Sun Sep 12 13:36:00 GMT 2004


"Jason Brooks" <icedown@icedown.net> writes:

> I am running cywgin and trying to compile binutils for a cross compiler to
> sparc64.  I am using,
> 
> ../binutils/configure –prefix=/usr –target=sparc64-unknown-linux-gnu
> 
> When I run make I get this.
> 
> gcc -DHAVE_CONFIG_H -I. -I../../binutils/ld -I. -D_GNU_SOURCE -I.
> -I../../binutils/ld -I../bfd -I../../binutils/ld/../bfd
> -I../../binutils/ld/../include -I../../binutils/ld/../intl -I../intl  -g -O2
> -DLOCALEDIR="\"/usr/share/locale\""   -W -Wall -Wstrict-prototypes
> -Wmissing-prototypes -g -O2 -c esun4.c
> esun4.c: In function `gldsun4_search_dir':
> esun4.c:191: error: `DIR' undeclared (first use in this function)

...

> I noticed during configure it was checking for header files containing DIR, 
> Is there some library I am missing to do this? 

Normally DIR will be picked up from <dirent.h>.  Normally configure
will defined HAVE_DIRENT_H, and everything will work.  You should have
a <dirent.h> file in your cygwin installation.

I'll note that in practice you really don't need to compile the
esun4.c file.  That is used for SunOS shared libraries, which are
quite obsolete these days and as far as I know were never used on
GNU/Linux (GNU/Linux used a different type of shared libraries in the
a.out days, which were quite a while ago now anyhow).  I don't know
why that emulation is being built when configuring for the
sparc64-unknown-linux-gnu target.  It would be safe to edit
ld/configure.tgt to remove "sun4" from "targ_extra_emuls" in the
sparc64-*-linux-gnu* entry.

Ian



More information about the Binutils mailing list