用Crosstool-0.43制作交叉交叉工具链的一些心得!(上)
2011-02-25 20:50
405 查看
获得交叉编译工具链有两种方法,一种是去http://ftp.arm.linux.org.uk/pub/armlinux/toolchain/下载已经制作好的交叉编译工具链,版本比较旧,且缺少gdb.另一种就是自己去制作交叉编译工具链. 这几天尝试着自己去制作交叉编译工具链,先回顾下步骤和所遇到的问题.O(∩_∩)O首先,我们需要去http://www.kegel.com/crosstool/crosstool-0.38.tar.gz下载crosstool脚本.解压下载的软件包,查看arm.dat文件内容.$cat ./arm.datKERNELCONFIG=`pwd`/arm.configTARGET=arm-linux //指定开发板.TARGET_CFLAGS="-O"$cat ./demo-arm.sh#!/bin/sh# This script has one line for each known working toolchain# for this architecture. Uncomment the one you want.# Generated by generate-demo.pl from buildlogs/all.dats.txtset -exTARBALLS_DIR=$HOME/crosstool/source //制作工具链所需要的软件包的目录.RESULT_TOP=$HOME/arm/4.1.0 //最终生成的工具链所在的目录.export TARBALLS_DIR RESULT_TOPGCC_LANGUAGES="c,c++"export GCC_LANGUAGES# Really, you should do the mkdir before running this,# and chown /opt/crosstool to yourself so you don't need to run as root.mkdir -p $RESULT_TOP#eval `cat arm.dat gcc-2.95.3-glibc-2.1.3.dat` sh all.sh --notest#eval `cat arm.dat gcc-2.95.3-glibc-2.2.2.dat` sh all.sh --notest#eval `cat arm.dat gcc-2.95.3-glibc-2.2.5.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.2.3-glibc-2.2.5.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.2.3-glibc-2.3.2.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.2.3-glibc-2.3.2-tls.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.3.6-glibc-2.2.2.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.3.6-glibc-2.2.5.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.3.6-glibc-2.3.2.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.3.6-glibc-2.3.2-tls.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.4.5-glibc-2.2.2.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.4.5-glibc-2.2.5.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.4.5-glibc-2.3.2.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.4.5-glibc-2.3.2-tls.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.4.5-glibc-2.3.5.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.4.5-glibc-2.3.5-tls.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.4.5-glibc-2.3.6.dat` sh all.sh --notest#eval `cat arm.dat gcc-3.4.5-glibc-2.3.6-tls.dat` sh all.sh --notest#eval `cat arm.dat gcc-4.0.2-glibc-2.2.2.dat` sh all.sh --notest#eval `cat arm.dat gcc-4.0.2-glibc-2.3.2.dat` sh all.sh --notest#eval `cat arm.dat gcc-4.0.2-glibc-2.3.2-tls.dat` sh all.sh --notest#eval `cat arm.dat gcc-4.0.2-glibc-2.3.5.dat` sh all.sh --notest#eval `cat arm.dat gcc-4.0.2-glibc-2.3.5-tls.dat` sh all.sh --notest#eval `cat arm.dat gcc-4.0.2-glibc-2.3.6.dat` sh all.sh --notest#eval `cat arm.dat gcc-4.0.2-glibc-2.3.6-tls.dat` sh all.sh --notest#eval `cat arm.dat gcc-4.1.0-glibc-2.2.2.dat` sh all.sh --notest#eval `cat arm.dat gcc-4.1.0-glibc-2.3.2.dat` sh all.sh --notesteval `cat arm.dat gcc-4.1.0-glibc-2.3.2-tls.dat` sh all.sh --notest//该脚本文件显示了目前所能成功制作的交叉编译工具链的一些版本,选择我们所需要的版本,既去掉前面的注释,没被选择的版本号直接注释掉即可.$cat ./gcc-4.1.0-glibc-2.3.2-tls.dat//打开所选择的交叉工具链所对应的文件,里面有成功制作出//该工具链的GCC,GLIBC等软件包的一些组合.BINUTILS_DIR=binutils-2.16.1GCC_CORE_DIR=gcc-3.3.6GCC_DIR=gcc-4.1.0GLIBC_DIR=glibc-2.3.2LINUX_DIR=linux-2.6.15.4LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.2GDB_DIR=gdb-6.5GLIBC_EXTRA_CONFIG="$GLIBC_EXTRA_CONFIG --with-tls --with-__thread --enable-kernel=2.4.18"下载所需的软件包到指定的目录,虽然该脚本启动会自动下载所需软件包,但还是推荐手动下载所需的软件包.(自动下载时速度可能比较慢)
相关文章推荐
- 用Crosstool-0.43制作交叉交叉工具链的一些心得!(下)
- linux:自己制作编译工具链crosstool-0.43
- crosstool制作arm-linux交叉编译工具链
- 在linux下使用crosstool-0.43制作自己的arm交叉编译环境 (转)
- ubuntu 利用crosstool-ng-1.8.1制作交叉编译工具链
- 用Crosstool 制作交叉编译工具链
- ubuntu12.04.2下用crosstool-NG制作交叉编译工具链
- 用crosstool-ng建立arm交叉编译工具链
- 使用Crosstool 0.43 在ubuntu上制作arm交叉编译器arm-linux-gcc
- ARM交叉编译工具链的制作
- 使用crosstool 制作arm-linux交叉编译链4.1.0
- CROSSTOOL-NG建立交叉编译工具链
- 制作交叉编译编译工具链
- 使用crosstool-ng-1.19.0.tar.bz2制作mips32大端交叉编译工具
- [Linux]:crosstool制作arm-linux交叉编译工具链
- ARM Linux 交叉编译工具链 制作攻略
- 制作ARM平台交叉编译工具链
- Crosstool-ng制作交叉编译工具链
- ARM Linux 交叉编译 工具链 制作攻略
- DM644x达芬奇平台交叉编译工具链的制作