This is the mail archive of the
newlib@sources.redhat.com
mailing list for the newlib project.
Bare Bone Arm-Elf-Gcc
- From: "David Mc Kenna" <mckennad at esatclear dot ie>
- To: crossgcc at sources dot redhat dot com, newlib at sources dot redhat dot com
- Date: Wed, 5 Feb 2003 20:06:56 GMT
- Subject: Bare Bone Arm-Elf-Gcc
- Reply-to: mckennad at esatclear dot ie
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