Changes between Version 7 and Version 8 of ARM_QEMU
- Timestamp:
- Feb 5, 2008 9:17:41 PM (17 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ARM_QEMU
v7 v8 2 2 3 3 == Toolchain Directory Structure == 4 5 === Directory Structure === 4 6 5 7 For 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). … … 27 29 This tutorial assumes that you have write access to '''{{{/arm}}}''' directory. 28 30 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 29 41 == Prepare Toolchains == 30 42 … … 36 48 * gcc: http://ftp.gnu.org/gnu/gcc/ 37 49 * 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 42 55 $ wget -c http://ftp.gnu.org/gnu/binutils/binutils-2.18.tar.bz2 43 56 $ wget -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.24.tar.bz2 44 57 $ wget -c http://ftp.gnu.org/gnu/gcc/gcc-3.4.6/gcc-3.4.6.tar.bz2 45 58 $ 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 46 61 }}} 47 62 … … 61 76 62 77 {{{ 63 $ mkdir -p /arm/setup/srcs64 $ cd /arm/setup/srcs78 $ mkdir -p ${PREFIX}/setup/srcs 79 $ cd ${PREFIX}/setup/srcs 65 80 $ tar xjf ../download/binutils-2.18.tar.bz2 66 81 $ tar xjf ../download/linux-2.6.24.tar.bz2 67 82 $ tar xjf ../download/gcc-3.4.6.tar.bz2 68 83 $ 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 69 87 }}} 70 88 … … 75 93 76 94 {{{ 77 $ mkdir -p /arm/setup/objs/binutils-arm78 $ cd /arm/setup/objs/binutils-arm79 $ ../../srcs/binutils-2.18/configure --target= arm-elf --prefix=/arm95 $ 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} 80 98 $ make 81 99 $ make install … … 97 115 Configure Linux: 98 116 {{{ 99 $ cd /arm/setup/srcs 100 $ cd linux-2.6.24/ 117 $ cd ${PREFIX}/setup/srcs/linux-2.6.24/ 101 118 $ make menuconfig ARCH=arm 102 119 }}} … … 148 165 ''(if you're wondering again, that will take about 8 minutes on a Core2Duo 2GHz)'' 149 166 167 ==== Build glibc ==== 168 169 Glibc headers: 170 {{{ 171 $ 172 }}} 173 174 Glibc: 175 {{{ 176 $ mkdir /arm/setup/objs/glibc-arm 177 $ cd /arm/setup/objs/glibc-arm 178 }}} 179 150 180 == PJSIP == 151 181