This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: gen-params problem during make all install of gcc for powerpc-eabi with Solaris host



>-----Original Message-----
>From: Conyers, Steve [mailto:steve.conyers@lmco.com]
>Sent: 20 April 2001 14:57

>David -- You indicate below that linux doesn't work with newlib and that
one
>should therefore use glibc.  I am not sure what you mean by pointing at the
>linux headers via the --with-headers during the the configuration.
Wouldn't
>one want to point at the glibc headers?  (although I went down in flames
>trying to do that)

  Nope, I do mean the Linux headers.  Newlib tries to implement nearly
everything itself - with a little help from libgloss you have a full BSP and
C runtime library with stdio features, more or less.  That's handy, because
on
an embedded system you probably don't have much of this sort of stuff
implemented yet unless you buy in a commercial RTOS.  So a call to printf,
for
example, calls the printf routine in newlib's libc.a, which probably ends up
working it's way down to a generic serial driver in libgloss (or somewhere
else - libffi ? I'm not familiar with the internal structure of newlib but
it
works along these general principles, regardless of how the different parts
are named).

  Glibc on the other hand is designed for desktop systems that already run 
an O/S.  That means that it wants to use the underlying OS's syscalls to do
as much of the work as possible - for example, printf in glibc's libc.a 
would just be a thin layer that calls through to the underlying OS - or on
OS's that don't have printf built in, it would perhaps work by sprintf-ing
into a buffer and using the underlying OS's write(...) function to send the
chars to stdout.

  So a compiler built for a newlib target needs to see newlib's headers,
because they define the system software architecture altogether when there
is no system software.  However, a compiler for a Glibc target needs to know
about the underlying O/S - what argument types its system calls use, etc.

>  Your advice helped me considerably in getting gcc
>working with newlib, but my objective is unfortunately to get linux up on a
>Motorola MVME5101.

  Ah.  Have you checked out http://www.linuxppc.org/ ?  You might find more
detailed info. there about the particular trials and tribulations of getting
the compiler and library sorted out.

     DaveK
-- 
 All your base are belong to the Israeli army!  Oh, now they aren't again!


**********************************************************************
This email and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to whom they
are addressed. If you have received this email in error please notify
the system manager.

This footnote also confirms that this email message has been swept by
MIMEsweeper for the presence of computer viruses.

www.mimesweeper.com
**********************************************************************

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]