Bare Bone Arm-Elf-Gcc
William A. Gatliff
bgat@billgatliff.com
Fri Feb 7 04:54:00 GMT 2003
Jeff:
I think this is a great idea, if you stick with the default linker
script as it is now. I really like that newlib & company work
out-of-the-box for the ARM Evaluator7T platform. Makes it an easy way
to introduce someone to GNU.
Cheers!
b.g.
On Thu, Feb 06, 2003 at 12:08:08PM -0500, J. Johnston wrote:
> Dave,
>
> From the newlib/libgloss side, I have been thinking about this and I
> propose that newlib adds a configuration option that tells newlib not to
> supply low-level syscalls. This would allow you to build newlib without
> the RDI/RDP syscalls. You should then place your new code
> in the libgloss/arm directory and build a separate library, crt0, and ld
> script which specifies both your library and your crt0. You can then
> use the compiler -T option to specify your ld script.
>
> The configuration options solves a long-standing problem regarding older
> platforms that put the syscall code in newlib and it really should be
> in libgloss. We could copy the existing code over to libgloss and eventually
> remove the problem by syncing up a default ld script with the compiler folks.
>
> -- Jeff J.
>
> David Mc Kenna wrote:
> > Hi all,
> >
> > I have successfully compiled gcc v3.2.1, binutils v2.13 and newlib v1.10 on
> > cygwin for Arm-elf.
> >
> > From these programs I have compiled and run, on hardware, several programs doing
> > math functions,etc. .
> >
> > I have come across problems when I try to do printf and scanf statements. My
> > main problem is that from delving into newlib/libc/sys/arm/syscalls.c that printf
> > and scanf require RDI or RDP i.e. Angel or Demon, installed on the chip, which
> > I don't have.
> >
> > To get over this I have encoded a software UART using bit banging in assembly
> > and I would like gcc to use this function by default for I/O from the chip.
> >
> >
> > What is the easiest way to implement this? Is it by modifying syscalls.c or
> > going in via libgloss?
> >
> > Below is my compile script
> >
> > Any help is appreciated
> >
> > Thanks,
> > Dave
> >
> >
> >
> > cd $gccver
> > ln -s ../$newlibver/newlib newlib
> > ln -s ../$newlibver/libgloss libgloss
> >
> > cp /home/PCAdmin/script/t-arm-elf $src_root/$gccver/gcc/config/arm
> >
> >
> > cd $src_root/BUILD/binutils && \rm -rf *
> > ../../$binutilsver/configure \
> > --with-included-gettext --enable-interwork --with-cpu=arm7tdmi \
> > --target=$target --host=$host --build=$build --enable-multilib -disable-shared
> > \
> > --prefix=$prefix -v > ../logs/$target-$binutilsver-configure.log 2>&1
> >
> > # Make Binutils
> >
> > make -w all install > ../logs/$target-$binutilsver-make.log 2>&1
> >
> >
> > cd $src_root/BUILD/gcc && rm -rf *
> >
> > $src_root/$gccver/configure \
> > --with-newlib --without-headers --with-gnu-as --with-gnu-ld --enable-win32-registry
> > \
> > --target=$target --prefix=$prefix --exec-prefix=$prefix --host=$host
> > \
> > --enable-multilib --enable-interwork --disable-shared --enable-languages=c
> >
> >>../logs/$target-$gccver-bootconf.log 2>&1
> >
> >
> > make all-gcc install-gcc > ../logs/$target-$gccver-bootmake.log 2>&1
> >
> > cd $src_root/BUILD/newlib
> > $src_root/$newlibver/configure --target=$target --prefix=$prefix > ../logs/$target-$newlibver-conf.log
> > 2>&1
> >
> > make all install > ../logs/$target-$newlibver-make.log 2>&1
> >
> > cd $src_root/BUILD/gcc && rm -rf *
> >
> > $src_root/$gccver/configure \
> > --enable-languages=c,c++ \
> > --target=$target --host=$host --build=$build --enable-win32-registry \
> > --with-newlib \
> > --prefix=$prefix \
> > --exec-prefix=$prefix \
> > --enable-multilib --enable-interwork \
> > --with-gnu-as --with-gnu-ld -v > ../logs/$target-$gccver-fullconf.log 2>&1
> >
> >
> > make -w all-gcc install-gcc > ../logs/$target-$gccver-fullmake.log 2>&1
> >
> >
> >
> > --
> > http://www.iol.ie
>
>
>
> ------
> Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
> Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
>
--
Bill Gatliff
Embedded systems and Free Software. Yea, it *is* all that!
http://billgatliff.com
------
Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
More information about the crossgcc
mailing list