1 安装交叉编译工具链的安装
从官网上下载最新交叉编译器

ST 推荐了两款通用交叉编译器,一个是 ARM 官方出品的:gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf,一个是 linaro 出品的:gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi.tar.xz,本教程我们使用 ARM 官方出品的交叉编译器。
首先是下载 ARM 官方出品的交叉编译器,图 4.3.1 中也给出了交叉编译器的下载链接:
编译器下载地址如下:
交叉编译公网: releases.linaro.org/components/toolchain/binaries

安装交叉编译工具的方法:
1 将 "gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf.tar.xz" 移动到ubuntu的共享文件夹目录下 移动到工作目录中

2.指令解压 tar -vxf gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf.tar.xz

3.将交叉编译路径添加到ubuntu环境里面: //安装:告诉系统要安装的软件在哪里
3.1 修改环境变量,使用打开/etc/profile 文件,命令如下:
$ sudo vim /etc/profile
3.2 打开/etc/profile 以后,在最后面增加一行输入如下所示内容:
export PATH=$PATH:~/system/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin //将编译器的位置注册进系统当中

- 编译器的位置: /home/linux/system/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin


3.3 source /etc/profile

4.安装相关库
在使用交叉编译器之前还需要安装一下其它的库,命令如下:
1) sudo apt-get install lsb-core lib32stdc++6 //安装库

交叉编译器验证18 首先查看一下交叉编译工具的版本号,输入如下命令:
arm-none-linux-gnueabihf-gcc -v "使用TAB会自动补全"
//如果没有就重启

1 arm 表示这是编译 arm 架构代码的编译器。
2 none 表示厂商,一般半导体厂商会修改通用的交叉编译器,此处就是半导体厂商字,ARM 自己做的交叉编译这里为 none,表示没有厂商。
3 linux 表示运行在 linux 环境下。
4 gnueabihf 表示嵌入式二进制接口,后面的 hf 是 hard float 的缩写,也就是硬件浮点,说明此交叉编译工具链支持硬件浮点。
5 gcc 表示是 gcc 工具。
//提示信息 :

- 交叉编译工具安装成功

2 stm32wrapper4dbg 工具安装
我们在编译 TF-A 或者 Uboot 的时候需要用到 stm32wrapper4dbg 这个工具,否则编译会报错。ST 提供了这个工具的源码,我们需要在 Ubuntu 下编译并安装这个源码,源码的下载地址为:https://github.com/STMicroelectronics/stm32wrapper4dbg,这个我们已经下载下来并放到了。将源码压缩包拷贝到 Ubuntu 下,然后进行解压,命令如下:
unzip stm32wrapper4dbg-master.zip //解压
cd stm32wrapper4dbg-master //进入目录
make //编译
编译完成以后就会得到一个名为“stm32wrapper4dbg”的工具
图中的“stm32wrapper4dbg”就是我们要的工具.将图中编译出来的stm32wrapper4dbg 工具拷贝到 Ubuntu 的/usr/bin 目录下,命令如下: sudo cp stm32wrapper4dbg /usr/bin拷贝完成以后就可以直接在终端中使用 stm32wrapper4dbg 这个工具了,输入如下命令查看帮助信息: stm32wrapper4dbg -s



3 28组常用工具的安装
1 sudo apt --fix-broken install "更新一下镜像源"
2 sudo apt-get install xinetd "xinetd 后台服务超线程工具"
3 sudo apt-get install device-tree-compiler "device-tree-compiler 设备树编译工具"
4 sudo apt-get install libncurses5-dev bison flex "libncurses5-dev 编译支持库" "bison 语法解析库" "flex 生成词法扫描器的工具"
5 sudo apt-get install build-essential "build-essential 图形界面工具支持包ncurses 库"
6 sudo apt-get install lzop "lzop 压缩工具"
7 sudo apt-get install libssl-dev "libssl-dev 是OpenSSL的通用库"
8 sudo apt-get install u-boot-tools "u-boot-tools 是mkimage镜像制作工具"
9 sudo apt-get install unzip "unzip 解压软件"
10 sudo apt-get install git "git 下载软件"
11 sudo apt install make-guile “make相关工具 ”
12 sudo apt install net-tools “网络工具”
13 sudo apt-get install tftp-hpa tftpd-hpa “安装tftp服务器”
14 sudo apt-get install nfs-kernel-server “安装nfs服务器”
15 sudo apt-get install nfs-common “安装nfs客户端”
16 sudo apt-get install gawk wget git diffstat unzip texinfo gcc-multilib chrpath socat cpio python
17 sudo apt-get install libsdl1.2-dev xterm
18 sudo apt-get install make xsltproc docbook-utils fop dblatex xmlto
19 sudo apt-get install python-git-doc
20 sudo apt-get install ncurses-dev libncursesw5-dev libssl-dev linux-headers-generic u-boot-tools device-tree-compiler bison flex g++ libyaml-dev
21 sudo apt-get install python-crypto
22 sudo apt-get install coreutils bsdmainutils sed curl bc lrzsz corkscrew cvs subversion mercurial nfs-common nfs-kernel-server libarchive-zip-perl dos2unix texi2html diffstat libxml2-utils
23 sudo apt-get install default-jre
24 sudo apt-get install libyaml-dev libpython2.7-dev
25 sudo apt install python3-pyelftools
26 sudo apt-get install python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping build-essential
27 sudo apt-get install open-vm-tools-desktop //可以双系统互相复制 - 重启电脑
28 sudo apt-get install libgl1-mesa-dev
//# 或 libglu1-mesa-dev qt
未完待续。。。
182

被折叠的 条评论
为什么被折叠?



