移植uboot-2020.01至JZ2440

由于最近制作文件系统,发现原来所用编译器的库只支持armv5t架构,并不支持我所用的armv4t架构的arm9芯片,因此针对我所用芯片s3c2440制作了最新的交叉编译工具链,先附上图。

以下为制作交叉编译工具链步骤:

  1. 安装crosstool-NG
    a. 建立arm-linux-tools目录

     mkdir arm-linux-toolscd arm-linux-tools/
    

    b. 从http://crosstool-ng.org/download/crosstool-ng/中下载新版crosstool-NG
    c. 解压crosstool-NG

     tar -jxvf crosstool-ng-1.24.0.tar.bz2
    

    d. 在arm-linux-tools下建立src目录

     mkdir src
    

    e. 配置并进行依赖检测

     cd crosstool-ng-1.24.0  ./configure如果存在包缺失的现象,安装好之后再执行配置即可
    

    f. 编译并安装

     makemake install
    

    g. 检查crosstool-NG是否安装成功

     ct-ng -v
    
  2. 配置交叉编译工具链
    在crosstool-NG中有很多已经做好的默认配置(位于crosstool-ng-1.24.0/samples目录下),这里只需要进行修改就可以了。因为是制作arm-linux的交叉编译工具链,所以选择arm-unknown-linux-gnueabi进行配置。
    a. 拷贝默认的.config

     cp samples/arm-unknown-linux-gnueabi/crosstool.config .config
    

    b. 配置config

     ct-ng menuconfig
    

    c. 设定源码包路径和交叉编译器的安装路径

     源码包路径:设置Paths and misc options下的Local tarballs directory为/arm-linux-tools/src交叉编译器的安装路径:设置Paths and misc options下的Prefix directory为/arm-linux-tools/x-tools/${CT_TARGET}
    

    d. 修改交叉编译器针对的架构

     设置Target options下的Architecture level为armv4t设置Target options下的Emit assembly for CPU为arm9tdmi设置Target options下的Tune for CPU为arm920t
    

    e. 设置编译时的并行进程数

     设置Paths and misc options下的Number of parallel jobs为4。这个数值不宜过大,应该为CPU核心数量的两倍。
    

    f. 设置编译器vender名

     设置Toolchain options下的Tuple's vendor string为S3C2440,这样生成的编译器的前缀就是arm-S3C2440-linux-gnueabi-
    

    g. 编译

     ct-ng build.4编译过程出错查看build.log文件,wget获取依赖包失败可手动下载放在.build/tarballs/目录下
    

    h. 配置环境变量

     sudo vi /etc/environment增加:/home/hanrunyu/work/tools/arm-linux-tools/x-tools/arm-s3c2440-linux-gnueabi/bin于PATH
    

    i. 检查交叉编译工具链是否安装成功

     arm-S3C2440-linux-gnueabi-gcc -v
    

    j. 编译成功后的交叉编译器路径

     编译器路径:/home/hanrunyu/work/tools/arm-linux-tools/x-tools/arm-s3c2440-linux-gnueabi/bin/库文件路径:/home/hanrunyu/work/tools/arm-linux-tools/x-tools/arm-s3c2440-linux-gnueabi/arm-s3c2440-linux-gnueabi/sysroot/lib//home/hanrunyu/work/tools/arm-linux-tools/x-tools/arm-s3c2440-linux-gnueabi/arm-s3c2440-linux-gnueabi/sysroot/usr/lib/
    

针对s3c2440芯片制作交叉编译工具链相关推荐

  1. Crosstool-ng制作交叉编译工具链

    Crosstool-ng制作交叉编译工具链 交叉编译器可以用现成的,比如CodeSourcery制作的交叉编译器,也可以自己制作,一般是用kernel+gcc+glibc+binutils的源码包来编 ...

  2. 制定交叉编译工具_制作交叉编译工具链的方法总结(详细)

    网上这类文章比较多,但是都不是很具体,刚好有门课结课论文要写这个,所以就总结了一下.以下的过程都是在ubuntu7.10上实际运行过的. 手工制作交叉编译工具 在制作工具开始前先要选好所需要的Binu ...

  3. 修改版——制作交叉编译工具链的方法总结

    原文链接: http://blog.csdn.net/shell2522/article/details/5798884 ======================================= ...

  4. Linux环境下交叉编译工具链的制作

    本文参照教材嵌入式Linux开发入门宝典 一.在Windows上安装虚拟机 1.浏览器搜索VMware,下载VMware Workstation Pro最新版,目前为16.2.3,并完成安装. 2.打 ...

  5. linux centos7 使用 crosstool-ng 构建 交叉编译 工具链 即构建各cpu架构平台的gcc编译器

    简介 crosstool-ng,全称是crosstool Next Generation,即下一代crosstool.crosstool是个交叉编译器的制作工具,但是做的不够好,于是有人(Yann E ...

  6. arm hisiv100 linux,hisiv100交叉编译工具链安装

    hisi交叉编译工具链安装 一.         摘要: 交叉编译简单的说,就是A机器上编译生成,运行在B机器上.那么在A机器上的编译工具安装,就是本文所要描述的内容. 工欲善其事必先利其器,所以交叉 ...

  7. hisi linux nptl.tar,hisiv100交叉编译工具链安装

    hisi交叉编译工具链安装 一.         摘要: 交叉编译简单的说,就是A机器上编译生成,运行在B机器上.那么在A机器上的编译工具安装,就是本文所要描述的内容. 工欲善其事必先利其器,所以交叉 ...

  8. arm-linux交叉编译工具链的制作(基于S3C2440)【转】

    本文转载自:http://eric-gao.iteye.com/blog/2160622 制作arm-linux交叉编译工具链一般通过crosstool工具或者crosstool-NG,前者使用方便, ...

  9. Linux ARM交叉编译工具链制作过程

    一.下载源文件 源代码文件及其版本与下载地址: Binutils-2.19.tar.bz2 http://ftp.gnu.org/gnu/binutils/ gcc-4.4.4.tar.bz2 htt ...

  10. 制定交叉编译工具_交叉编译工具链的制作

    交叉编译工具链的制作 前言及准备 本笔记制作的交叉编译工具已通过简单验证,对初次有需求需要搭建交叉工具链有一定的指导意义,制作工具链比较耗时,需做好花费一整天时间的准备. 资料学习链接 linux工具 ...

最新文章

  1. mysql 事件计划区别_MySQL 计划事件
  2. Ubuntu20.04开机界面(boot animation)改成Windows95
  3. 操作系统复习笔记 04 Process 进程
  4. 前端学习(2125):watch实现
  5. python没有错误但是不显示结果_解决Pycharm无法显示matplotlib绘图问题
  6. 关情纸尾-----Quartz2D-简介
  7. 2020软考软件设计师--基础知识培训视频-任铄(小任老师)-专题视频课程
  8. 【java模板引擎】-beetl
  9. FTP 打开文件夹提示该文件没有程序与之关联来执行该操作 请在控制面板的文件夹选项中创建关联
  10. 网易博客中的心情随笔
  11. 分享下最近的Nvidia GPU 3060 laptop GPU、linzhi、Tesla算力曲线
  12. parent.layer.open打开的页面向上个页面传值
  13. 计算机cpu的功能和作用是什么意思,cpu的功能有哪些
  14. 2018第九届蓝桥杯JavaA组省赛真题详解
  15. 计算机基础知识实验内容及步骤,计算机基础实验报告要点.doc
  16. Linux C 两种方法实现复制拷贝文件
  17. step7注释乱码问题解决
  18. 纯css+html实现的分页器功能
  19. 【机器学习】机器学习之一元线性回归
  20. php中尊敬的某某某先生代码,auth.class.php

热门文章

  1. msdn.itellyou.cn-------sql server下载网站
  2. Oracle Linux 9 发布 -- Oracle 提供支持 RHEL 兼容发行版
  3. 0xc0000225无法进系统_win10系统出现0xc0000225无法进入系统的恢复方法
  4. 如何用MATLAB预测未来人口,使用matlab对将来人口总数进行预测
  5. POJ3080 基本字符串库函数的应用 ..Brute Force/朴素模式匹配算法
  6. 全国青少年软件编程等级考试标准Python(1-6级)
  7. 地铁视频监控系统中无线监控技术的应用
  8. ipv6解析地理位置
  9. Fabric实战(12)Fabric CA-账号服务器
  10. python展示水果价格_小姨开水果店的,所以今天用Python写了一个水果店小系统!...