嵌入天地

----->>>>>嵌入式 文学 管理 米国 卡通 以及其他

公益广告:你可知道,看帖回复和评论是一种美德!

另,兄弟姐妹们,假如有技术问题交流,请直接发送到我的信箱!

博客园 首页 新随笔 联系 订阅 管理

#!/bin/bash

# (C) Copyright 2011  DENX Software Engineering GmbH

#

# Licensed under the GPLv2 or later.

##1 Locate the operation directory to the home directory of the current user
echo "====================================================================="
echo "Install step 1 : Set work directory to ~"
echo "====================================================================="

cd    ~

##2 Create the used directory
echo "====================================================================="
echo "Install step 2 : Create necessary directorys"
echo "====================================================================="

mkdir crosstool-ppc
cd    crosstool-ppc
mkdir build-tools kernel tools

##3 Setup the directory parameter
echo "====================================================================="
echo "Install step 3 :Set the system parameters"
echo "====================================================================="

export PRJROOT=/home/wenlonli/crosstool-ppc
export TARGET=powerpc-8xx-linux
export PREFIX=$PRJROOT/tools
export TARGET_PREFIX=$PREFIX/$TARGET
export PATH=$PREFIX/bin:$PATH
export CURRENT_PASSWD=wuliao

##4 Copy the related packages
echo "====================================================================="
echo "Install step 4 :Copy and prepare the packages"
echo "====================================================================="

cp ~/src/gmp-4.2.2.tar.bz2    $PRJROOT/build-tools/
cp ~/src/mpfr-3.0.0.tar.gz    $PRJROOT/build-tools/
cp ~/src/mpc-0[1].8.1.tar.gz  $PRJROOT/build-tools/
cp ~/src/binutils-2.21.tar.gz $PRJROOT/build-tools/
cp ~/src/gcc-4.5.3.tar.bz2    $PRJROOT/build-tools/
cp ~/src/gcc-4.3.2.tar.bz2    $PRJROOT/build-tools/
cp ~/src/glibc-2.14.tar.bz2   $PRJROOT/build-tools/

cp ~/src/linux-2.6.30.tar.gz  $PRJROOT/kernel/


##5 Extract gmp
echo "====================================================================="
echo "Install step 5 : Extract GMP"
echo "====================================================================="
cd  $PRJROOT/build-tools/
tar -jxvf gmp-4.2.2.tar.bz2

cd  $PRJROOT/build-tools/gmp-4.2.2

##6 Configure gmp
echo "====================================================================="
echo "Install step 6 : Configure GMP"
echo "====================================================================="
./configure --prefix=/usr/local/gcc

##7 Compile gmp
echo "====================================================================="
echo "Install step 7 : Compile GMP"
echo "====================================================================="
make
make check

##8 Install gmp
echo "====================================================================="
echo "Install step 8 : Install GMP"
echo "====================================================================="
sudo make install
cd   ..
rm   -rf gmp-4.2.2

###########################################################################
##9 Extract MPFR
echo "====================================================================="
echo "Install step 9 : Extract MPFR"
echo "====================================================================="
cd  $PRJROOT/build-tools/
tar -xvf mpfr-3.0.0.tar.gz

cd  $PRJROOT/build-tools/mpfr-3.0.0

##A Configure MPFR
echo "====================================================================="
echo "Install step A : Configure MPFR"
echo "====================================================================="
./configure --prefix=/usr/local/gcc --with-gmp=/usr/local/gcc

##B Compile MPFR
echo "====================================================================="
echo "Install step B : Compile MPFR"
echo "====================================================================="
make
make check

##C Install MPFR
echo "====================================================================="
echo "Install step C : Install MPFR"
echo "====================================================================="
sudo make install
cd   ..
rm   -rf mpfr-3.0.0

###########################################################################
##D Extract MPC
echo "====================================================================="
echo "Install step D : Extract MPC"
echo "====================================================================="
cd  $PRJROOT/build-tools/
tar -xvf mpc-0[1].8.1.tar.gz

cd  $PRJROOT/build-tools/mpc-0.8.1

##E Configure MPC
echo "====================================================================="
echo "Install step E : Configure MPC"
echo "====================================================================="
./configure --prefix=/usr/local/gcc --with-gmp=/usr/local/gcc --with-mpfr=/usr/local/gcc

#before compile
# we must update the file acos, line 192
# from
# #if MPFR_VERSION_MAJOR > 3
#      : rnd_im == GMP_RNDA ? GMP_RNDZ
# #endif
# to
# #if MPFR_VERSION_MAJOR > 3
#      : rnd_im == GMP_RNDA ? GMP_RNDZ
# #endif

cp ~/src/patch/acos.c $PRJROOT/build-tools/mpc-0.8.1/src/

##F Compile MPC
echo "====================================================================="
echo "Install step F: Compile MPC"
echo "====================================================================="
make

##10 Install MPC
echo "====================================================================="
echo "Install step 10 : Install MPC"
echo "====================================================================="
sudo make install
cd   ..
rm   -rf mpc-0.8.1


###########################################################################
##11 Extract binutils
echo "====================================================================="
echo "Install step 11 : Extract binutils"
echo "====================================================================="
cd  $PRJROOT/build-tools/
tar -xvf binutils-2.21.tar.gz
mkdir binbud

cd  $PRJROOT/build-tools/binbud

##12 Configure binutils
echo "====================================================================="
echo "Install step 12 : Configure binutils"
echo "====================================================================="
../binutils-2.21/configure --target=$TARGET --prefix=$PREFIX --disable-werror

##13 Compile binutils
echo "====================================================================="
echo "Install step F: Compile binutils"
echo "====================================================================="
make

##14 Install binutils
echo "====================================================================="
echo "Install step 10 : Install binutils"
echo "====================================================================="
make install
cd   ..
rm   -rf binbud
rm   -rf binutils-2.21

###########################################################################
##31 Extract GCC
echo "====================================================================="
echo "Install step 31 : Extract GCC"
echo "====================================================================="
cd  $PRJROOT/build-tools/
tar -jxvf gcc-4.3.2.tar.bz2
mkdir gcc-boot-bud

cd  $PRJROOT/build-tools/gcc-boot-bud

##32 Configure GCC
echo "====================================================================="
echo "Install step 32 : Configure gcc"
echo "====================================================================="
../gcc-4.3.2/configure --target=$TARGET --prefix=$PREFIX --without-headers --enable-language=c --disable-threads --with-newlib --disable-shared --disable-libmudflap --disable-libssp --with-gmp=/usr/local/gcc --disable-decimal-float --disable-libgomp --disable-multilib


##33 Compile GCC
echo "====================================================================="
echo "Install step F: Compile GCC"
echo "====================================================================="
make all-gcc


##34 Install GCC
echo "====================================================================="
echo "Install step 34 : Install GCC"
echo "====================================================================="
make install-gcc

##41 Compile LIBGCC
echo "====================================================================="
echo "Install step 41: Compile LIBGCC"
echo "====================================================================="
LD_LIBRARY_PATH=/usr/local/gcc/lib
export LD_LIBRARY_PATH

make all-target-libgcc

##42 Install binutils
echo "====================================================================="
echo "Install step 42 : Install LIBGCC"
echo "====================================================================="
make install-target-libgcc
cd   ..
rm   -rf gcc-boot-bud

##51 Extract  Kernel
echo "====================================================================="
echo "Install step 51 : Extract Kernel Header"
echo "====================================================================="
cd  $PRJROOT/kernel/
tar -xvf linux-2.6.30.tar.gz
cd linux-2.6.30
make ARCH=powerpc INSTALL_HDR_PATH=$TARGET_PREFIX/usr headers_install
#ls -p $TARGET_PREFIX/usr/include asm/ asm-generic/ drm/ linux/ mtd/ rdma/ sound/ video/

###########################################################################
##61 Extract Glibc
echo "====================================================================="
echo "Install step 61 : Extract Glibc"
echo "====================================================================="
cd  $PRJROOT/build-tools/
tar -jxvf glibc-2.14.tar.bz2
mkdir glib-bud
cd  $PRJROOT/build-tools/glib-bud

##62 Configure Glibc
echo "====================================================================="
echo "Install step 62 : Configure Glibc"
echo "====================================================================="
LD_LIBRARY_PATH=/usr/local/gcc/lib
export LD_LIBRARY_PATH

CC=powerpc-8xx-linux-gcc /home/wenlonli/crosstool-ppc/build-tools/glibc-2.14/configure --host=$TARGET --prefix="/usr" --enable-add-ons --with-headers=$TARGET_PREFIX/usr/include libc_cv_forced_unwind=yes libc_cv_c_cleanup=yes


##63 Compile Glibc
echo "====================================================================="
echo "Install step 63: Compile Glibc"
echo "====================================================================="
cp ~/src/patch/Makeconfig $PRJROOT/build-tools/glibc-2.14
make


##64 Install Glibc
echo "====================================================================="
echo "Install step 64: Install Glibc"
echo "====================================================================="
make install_root=$TARGET_PREFIX prefix="" install

cp ~/src/patch/libc.so $TARGET_PREFIX/lib/libc.so
cd   ..
rm   -rf glib-bud
rm   -rf glibc-2.14

###########################################################################
##71 Extract GCC
echo "====================================================================="
echo "Install step 71 : Prepare for Full GCC"
echo "====================================================================="
#tar -jxvf gcc-4.3.2.tar.bz2
mkdir full-gcc-bud
cd  $PRJROOT/build-tools/full-gcc-bud

##72 Configure GCC
echo "====================================================================="
echo "Install step 62 : Configure Full GCC"
echo "====================================================================="
../gcc-4.3.2/configure --target=$TARGET --prefix=$PREFIX --enable-languages=c,c++ --with-headers=$TARGET_PREFIX/usr/include --disable-libgomp --with-gmp=/usr/local/gcc

##73 Compile  Full GCC
echo "====================================================================="
echo "Install step 63: Compile  Full GCC"
echo "====================================================================="
make all


##74 Install Full GCC
echo "====================================================================="
echo "Install step 74: Install Full GCC"
echo "====================================================================="
make install

cd   ..
rm   -rf full-gcc-bud
rm   -rf gcc-4.3.2

posted on 2011-07-18 10:20  嵌入专栏  阅读(570)  评论(0编辑  收藏  举报