安装和配置Linux交叉编译工具

这篇博客是安装和配置CrossTool-NG交叉编译工具的笔记

  • 下载并安装crossTool-ng
1
$wget http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.24.0.tar.bz2
然后解压
1
$tar -jxvf crosstool-ng-1.24.0.tar.bz2
进入crosstool-ng的源码项目
1
$cd crosstool-ng-1.24.0/
运行自动配置检查和安装
1
2
3
$./configure --prefix=/usr/local/
$make
$sudo make install
> 安装过程中可能提示缺少包,笔者是直接在新安装的Ubuntu-20.4系统上装crossTool,所以需要安装以下所示的包
1
$sudo apt-get install gcc flex texinfo help2man gawk make libtool libtool-bin ncurses-dev
测试是否安装成功
1
$ct-ng -v
  • 配置并构建交叉工具链

    显示CrossTool自带的例子都有哪些,并找一个你感兴趣的show一下细节

    1
    2
    $ct-ng list-samples
    $ct-ng show-arm-unknown-linux-gnueabi

    可以的话,我们以一个sample作为起点去初始化项目

    1
    2
    3
    $mkdir CrossTool-ArmLinux
    $cd CrossTool-ArmLinux
    $ct-ng arm-unknown-linux-gnueabi

    然后就可以使用crossTool自带的配置工具啦

    1
    $ct-ng menuconfig

    然后根据提示修改各个参数

    config界面
    本地源码库
    CPU架构
    项目名
    Linux目标版本
    gcc版本

    然后就可开始构建你的工具链了

    1
    $ct-ng build

    当然在这过程中,可能会遇到某些包无法下载(Retrieving),那就手动下载到上面设置的tarball目录下吧。直接用wget方法下载就好,大多数包可以在GNU网站SourceForge下载,附送一个及其难找的strace包链接

  • 尝试编译

    1. ct-ng build成功后,一般在你的用户目录下会出现一个arm-2410-linux-gnueabi这样的软件目录

    2. 进去之后有bin目录,里头就是构建的工具了

    3. 把这些工具(命令)加入你的shell系统环境变量就大功告成了

      1
      $export PATH=$PATH:~/arm-2410-linux-gnueabi/bin/

      NOTE:export修改后的环境变量仅本次登陆有效

    4. 尝试使用构建的交叉工具为Arm编译一个源码

      1
      $arm-2410-linux-gnueabi-g++ helloWord.cpp
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2022-2024 RY.J
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信