交叉编译mad_fcl的shell脚本arm-linux-gcc 3.4

来源:互联网 发布:淘宝那个小女孩 编辑:程序博客网 时间:2024/05/21 15:40
 #!/bin/sh
export PATH=$PATH:/opt/cross/release-3.4.0-vfp/bin/
export MADBUILD=$PWD
#test cross-comilper chain
echo "int main() { return 0; }" > test_comilper.c
if `arm-linux-gcc -g -o test_comilper test_comilper.c >/dev/null 2>&1` ; then
        
    echo "arm-linux-gcc .OK!"
    rm test_comilper
    rm test_comilper.c
else
    echo 'please check your cross-comilper path in your $PATH'
    rm test_comilper.c
    exit 1
fi
#over



#test files

if [ -e curl-7.16.1.tar.gz ] && [ -e expat-2.0.0.tar.gz ] && [ -e mad_fcl_v1.7_src.tar.gz ] && [ -e openssl-0.9.8e.tar.gz ] && [ -e zlib-1.2.3.tar.gz ];then
    echo "ok lets begin~"
else
    echo "we need curl-7.16.1.tar.gze xpat-2.0.0.tar.gz mad_fcl_v1.7_src.tar.gz openssl-0.9.8e.tar.gz zlib-1.2.3.tar.gz these files"
   echo "please loaddown these files again~"
fi
#end test

rm -rf expat
rm -rf mad_arm
rm -rf openssl
rm -rf zlib
rm -rf curl

tar -xvf curl-7.16.1.tar.gz
tar -xvf expat-2.0.0.tar.gz
tar -xvf mad_fcl_v1.7_src.tar.gz
tar -xvf openssl-0.9.8e.tar.gz
tar -xvf zlib-1.2.3.tar.gz

mv expat-2.0.0 expat
mv mad_fcl_v1.7_src mad_arm
mv openssl-0.9.8e openssl
mv zlib-1.2.3  zlib
mv curl-7.16.1 curl

cd mad_arm
mkdir lib
#correct Makefile
sed 's/multis_flute flute_unittest/ /' Makefile>Makefile.temp
rm Makefile
mv Makefile.temp Makefile

cd alclib
sed 's/gcc/arm-linux-gcc/' Makefile >Makefile.temp
rm Makefile
mv Makefile.temp Makefile
cd ..

cd flute
sed 's/gcc/arm-linux-gcc/' Makefile >Makefile.temp
rm Makefile
mv Makefile.temp Makefile
cd ..

cd flutelib
sed 's/gcc/arm-linux-gcc/' Makefile >Makefile.temp
rm Makefile
mv Makefile.temp Makefile
cd ..

cd sdplib
sed 's/gcc/arm-linux-gcc/' Makefile >Makefile.temp
rm Makefile
mv Makefile.temp Makefile
cd ..

#compiler libs

cd $MADBUILD

if [ -d /usr/local/ssl ]; then
    if [ -d /usr/local/ssl/include/ ]; then
        cp $MADBUILD/curl/include/curl /usr/local/ssl/include/ -r
    fi
else
    mkdir /usr/local/ssl
    mkdir /usr/local/ssl/include
    cp $MADBUILD/curl/include/curl /usr/local/ssl/include/ -r
fi

cd $MADBUILD

cd curl
./configure --host=arm-linux CC=arm-linux-gcc
make
cp lib/.libs/libcurl.* $MADBUILD/mad_arm/lib
cd $MADBUILD

cd zlib
cp zlib.h zconf.h /usr/local/ssl/include/
cd $MADBUILD

cd expat
cp lib/expat.h lib/expat_external.h /usr/local/ssl/include/
./configure --host=arm-linux
make
cp .libs/lib* $MADBUILD/mad_arm/lib
cd $MADBUILD
 
cd zlib
CC=arm-linux-gcc ./configure --shared
make
cp libz* $MADBUILD/mad_arm/lib
cd $MADBUILD

cd openssl
 ./Configure shared os/compiler:arm-linux-gcc
make
cp libcrypto.* $MADBUILD/mad_arm/lib
mkdir /usr/local/ssl/include/openssl
cp include/openssl/* /usr/local/ssl/include/openssl/
cd $MADBUILD/mad_arm

make
cd $MADBUILD/mad_arm/bin
echo "**********************************************************************************"
echo ----------------------------------------------------------------------------------
echo "Congratulations  flute is in this directory and depend libs in ../lib  Good Luck "
echo -----------------------------------------------------------------------------------
echo "***********************************************************************************"
原创粉丝点击