·ChinaUnix首页 ·论坛 ·博客 
Linux首页 | Linux新闻 | Linux文档 | Linux论坛 | Linux下载 | Linux博客 | Linux搜索
新手入门 | 安装启动 | 管理员指南 | 开发手册 | 桌面应用 | 程序开发 | 数据库 | 网络技术| CentOS | Fedora | MySQL | Apache | Ubuntu | Gentoo| OSCON08
  Linux时代 >> 技术文档 >> 程序开发
 
为S3C2410建立arm-linux交叉编译环境 gcc-4.1.1-glibc-2.3.2
来源: ChinaUnix博客  日期: 2008.03.14 20:10 (共有条评论) 我要评论
 
    因为在网上下载的gcc3.4.1编译uboot1.2的时候出现错误,所以决定在自己的PC环境编译一个交叉编译环境。
    编译平台:
    CPU:AMDXP1800+
    RAM:1G
    OS: FC8
    GCC: 4.1.2
   
    1. 下载从 http://kegel.com/crosstool 最先的crosstool0.43。 
    2.解压crosstool0.43到/opt下。在/opt会有一个目录crosstool0.43
    3.将crosstool0.43更名为crosstool
        mv crosstool0.43 crosstool
    4. 修改crosstool所属用户为当前非root用户。
[kevin@localhost opt]$ sudo chown -R kevin:kevin crosstool
    5.建立下载文件夹。crosstool在安装期间会从网络下载相关文件到该目录。
[kevin@localhost opt]$ mkdir ~/downloads
    6.在crosstool中我们将要使用的可执行文件是demo-arm9tdmi.sh.内容如下
#eval `cat arm9tdmi.dat gcc-3.2.3-glibc-2.3.2.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.2.3-glibc-2.3.2-tls.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.3.6-glibc-2.2.5.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.3.6-glibc-2.3.2.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.3.6-glibc-2.3.2-tls.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.4.5-glibc-2.2.5.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.4.5-glibc-2.3.2.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.4.5-glibc-2.3.2-tls.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.4.5-glibc-2.3.5.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.4.5-glibc-2.3.5-tls.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.4.5-glibc-2.3.6.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-3.4.5-glibc-2.3.6-tls.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-4.0.2-glibc-2.3.2.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-4.0.2-glibc-2.3.2-tls.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-4.0.2-glibc-2.3.5.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-4.0.2-glibc-2.3.5-tls.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-4.0.2-glibc-2.3.6.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-4.0.2-glibc-2.3.6-tls.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-4.1.0-glibc-2.3.2.dat` sh all.sh --notest
#eval `cat arm9tdmi.dat gcc-4.1.0-glibc-2.3.2-tls.dat` sh all.sh --notest
eval `cat arm9tdmi.dat gcc-4.1.1-glibc-2.3.2.dat` sh all.sh --notest
最后一行是我自己添加的。可以看出我们将要使用文件gcc-4.1.1-glibc-2.3.2.dat , 下面看看该文件里面有什么?
BINUTILS_DIR=binutils-2.16.1
GCC_CORE_DIR=gcc-3.3.6
GCC_DIR=gcc-4.1.1
GLIBC_DIR=glibc-2.3.2
LINUX_DIR=linux-2.6.24
LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0
GLIBCTHREADS_FILENAME=linux-libc-headers-2.6.12.0
GDB_DIR=gdb-6.5
因为我要用改编译器编译linux-2.6.24内核,所以把LINUX_DIR指定的内核改为inux-2.6.24
从以上可以看出我们将要使用如下编译工具:
    binutils-2.16.1   下载地址: ftp//ftp.gnu.org
    gdb-6.5                        下载地址: ftp//ftp.gnu.org
    gcc-3.3.6                    下载地址: ftp//ftp.gnu.org
    glibc-2.3.2               下载地址: ftp//ftp.gnu.org
    linux-2.6.24            下载地址:  http://www.kernel.org
    linux-libc-headers-2.6.12.0   下载地址:      http://ep09.pld-linux.org/~mmazur/linux-libc-headers/
在编译的过程中会自动从网络下载以上文件到~/downloads文件夹。速度实在是无法忍受,建议在在windows里面用迅雷或其他下载工具把以上文件都下载下来,然后copy到downloads文件夹中。安装的时候发现文件存在就不会从网络下载了,这样可以大大缩短编译时间。
    7.编译生成的gcc默认文件名为arm-9tdmi-linux-gun-gcc.bin. 如果不想用改名称,比如我想用arm-linux-gcc.bin,可以修改文件arm9tdmi.dat第二行。
    8.以上准备工作后,就可以开始编译了,这个过程比较长,在我的电脑上用了好几个小时呢~
    ./demo-arm9tdmi.sh
    9.编译生成的文件位于crosstool/gcc-4.1.1-glibc-2.3.2.   


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/63560/showart_496596.html
  发表评论 查看评论(共有条评论) 我要提问
 
 


最新资讯更多>> 
· Shopex收购ecshop,discuz为了..
· 提前下载:OpenOffice.org 3.0..
· 微软Office面临严重挑战?
· 媒体观察:法国收获开源带来的启示
· 微软频繁接触开源 跨越“源”界限
· 挣脱Windows束缚 拥抱Ubuntu L..
· Puppy Linux领导者转向开发UniPup
· 发行版发布:Mandriva Linux 2009
· Linux Kernel 最新稳定版2.6.2..
· Linux之父Linus Torvalds谈论各..
论坛热点更多>> 
· 那些常常见到又叫不出名字的花
· xp 和LINUX 上网下载东西
· LILEI和HANMEIMEI的欲望人生..
· Oracle再祭收购大旗,这次红..
· 陈向群、杨芙清编著的《操作..
· 这几道题会做就可直接找LINU..
· RHCE考试费4200!NND
· 配置DNS主从自动更新同步,无..
· 夜店最火辣的Party girls
· 还是米人啊
文档更新更多>> 
· kmess1.5.1在红旗6sp1上的安装方法
· OOo3.0 RC2 发布,中文版可用。
· IT从业人员必看的10大论坛
· SSH权威指南
· DNS相关定义介绍
· OpenVPN(zt)
· Linux shell I/O重定向详解
· linux下的烧写环境配置
· tcpdump详细用法
· 转:ARM的嵌入式Linux移植体验之基..
 
关于我们 | 联系方式 | 广告合作 | 诚聘英才 | 网站地图 | 友情链接 | 免费注册

Copyright © 2001-2008 ChinaUnix.net All Rights Reserved

感谢所有关心和支持过ChinaUnix的朋友们

京ICP证041476号