This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: Configuring linker flags while cross-compiling gdb
- From: Daniel Jacobowitz <drow at false dot org>
- To: Aaron Gaudio <agaudio at eng dot mc dot xerox dot com>
- Cc: gdb <gdb at sources dot redhat dot com>
- Date: Mon, 13 Jun 2005 11:30:08 -0400
- Subject: Re: Configuring linker flags while cross-compiling gdb
- References: <1118676366.27729.73.camel@rockhopper>
On Mon, Jun 13, 2005 at 11:26:06AM -0400, Aaron Gaudio wrote:
> Continuing with my adventure from last week, I am now trying to cross-
> comile gdb to run on i386-pc-solaris2.10 and build on sparc-sun-
> solaris2.10.
>
> I used the following configure line:
>
> $ bash_cv_have_mbstate_t=yes ./configure --build sparc-sun-solaris2.8 --
> host i386-pc-solaris2.10
>
> This seems to get the correct compilers to use. However, when trying to
> link, it is missing the correct rpath-link (where I have the x86 sysroot
> to link system libraries), and it is also not linking in a required
> library, libsocket (I get undefined symbols that manually adding -
> lsocket to the link command fixes).
These both sound like problems with your cross compiler, not problems
with GDB.
> So, now I'm trying to figure out if there is a way to pass these by way
> of option or environment variable to the top-level configure in a way
> that they will cascade to the subdirectory configures and/or Makefiles.
> Perusing the scripts in question, the top-level configure and
> Makefile.in use a variable called "LDFLAGS_FOR_TARGET", and that seems
> like the place to add a -R option or -W,l,--rpath-link to take care of
> the rpath, however the gdb/configure and gdb/Makefile.in don't reference
> this variable at all...
No, that's for target libraries. Gdb is a host program. The fact taht
build != host is irrelevant here; your "target" is i386-pc-solaris2.10,
and so is your "host". LDFLAGS is the correct place to add flags for
the host.
--
Daniel Jacobowitz
CodeSourcery, LLC