Changes between Version 7 and Version 8 of ARM_QEMU


Ignore:
Timestamp:
Feb 5, 2008 9:17:41 PM (12 years ago)
Author:
bennylp
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ARM_QEMU

    v7 v8  
    22 
    33== Toolchain Directory Structure == 
     4 
     5=== Directory Structure === 
    46 
    57For this tutorial, we will put the toolchain in '''{{{/arm}}}''' directory rather than the usual {{{/usr/local}}}. I prefer this approach since it's easier to manage (for example, to delete everything when things don't work or when we're finished with it, or to put it on portable drive to be carried to different system). 
     
    2729This tutorial assumes that you have write access to '''{{{/arm}}}''' directory. 
    2830 
     31=== Setup Environment Variables for the Build Process === 
     32 
     33{{{ 
     34 export TARGET=arm-elf 
     35 export PREFIX=/arm 
     36 export SYSROOT=${PREFIX}/sysroot 
     37 export ARCH=arm 
     38 export CROSS_COMPILE=${TARGET}- 
     39}}} 
     40 
    2941== Prepare Toolchains == 
    3042 
     
    3648 * gcc: http://ftp.gnu.org/gnu/gcc/ 
    3749 * newlib: ftp://sources.redhat.com/pub/newlib/index.html 
    38  
    39 {{{ 
    40   $ mkdir -p /arm/setup/download 
    41   $ cd /arm/setup/download 
     50 * glibc: http://ftp.gnu.org/gnu/glibc 
     51 
     52{{{ 
     53  $ mkdir -p ${PREFIX}/setup/download 
     54  $ cd ${PREFIX}/setup/download 
    4255  $ wget -c http://ftp.gnu.org/gnu/binutils/binutils-2.18.tar.bz2 
    4356  $ wget -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.24.tar.bz2 
    4457  $ wget -c http://ftp.gnu.org/gnu/gcc/gcc-3.4.6/gcc-3.4.6.tar.bz2 
    4558  $ wget -c ftp://sources.redhat.com/pub/newlib/newlib-1.16.0.tar.gz 
     59  $ wget -c http://ftp.gnu.org/gnu/glibc/glibc-2.5.tar.gz 
     60  $ wget -c http://ftp.gnu.org/gnu/glibc/glibc-linuxthreads-2.5.tar.bz2 
    4661}}} 
    4762 
     
    6176 
    6277{{{ 
    63   $ mkdir -p /arm/setup/srcs 
    64   $ cd /arm/setup/srcs 
     78  $ mkdir -p ${PREFIX}/setup/srcs 
     79  $ cd ${PREFIX}/setup/srcs 
    6580  $ tar xjf ../download/binutils-2.18.tar.bz2 
    6681  $ tar xjf ../download/linux-2.6.24.tar.bz2 
    6782  $ tar xjf ../download/gcc-3.4.6.tar.bz2 
    6883  $ tar xzf ../download/newlib-1.16.0.tar.gz 
     84  $ tar xzf ../download/glibc-2.5.tar.gz 
     85  $ cd glibc-2.5 
     86  $ tar xjf ../../download/glibc-linuxthreads-2.5.tar.bz2 
    6987}}} 
    7088 
     
    7593 
    7694{{{ 
    77   $ mkdir -p /arm/setup/objs/binutils-arm 
    78   $ cd /arm/setup/objs/binutils-arm 
    79   $ ../../srcs/binutils-2.18/configure --target=arm-elf --prefix=/arm 
     95  $ mkdir -p ${PREFIX}/setup/objs/binutils-arm 
     96  $ cd ${PREFIX}/setup/objs/binutils-arm 
     97  $ ../../srcs/binutils-2.18/configure --target=${TARGET} --prefix=${PREFIX} --with-sysroot=${SYSROOT} 
    8098  $ make 
    8199  $ make install 
     
    97115Configure Linux: 
    98116{{{ 
    99   $ cd /arm/setup/srcs 
    100   $ cd linux-2.6.24/ 
     117  $ cd ${PREFIX}/setup/srcs/linux-2.6.24/ 
    101118  $ make menuconfig ARCH=arm 
    102119}}} 
     
    148165''(if you're wondering again, that will take about 8 minutes on a Core2Duo 2GHz)'' 
    149166 
     167==== Build glibc ==== 
     168 
     169Glibc headers: 
     170{{{ 
     171  $  
     172}}} 
     173 
     174Glibc: 
     175{{{ 
     176  $ mkdir /arm/setup/objs/glibc-arm 
     177  $ cd /arm/setup/objs/glibc-arm 
     178}}} 
     179 
    150180== PJSIP == 
    151181