一.交叉编译
我们在 x86 平台上,编写程序并编译成可执行程序。这种方式下,我们使用 x86 平台上的工具,开发针对 x86 平台本身的可执行程序,这个编译过程称为本地编译。
交叉编译可以理解为,在当前编译平台下,编译出来的程序能运行在体系结构不同的另一种目标平台上,但是编译平台本身却不能运行该程序:
比如,我们在 x86 平台上,编写程序并编译成能运行在 ARM 平台的程序,编译得到的程序在 x86 平台上是不能运行的,必须放到 ARM 平台上才能运行。
总结:交叉编译实际用ubuntu20.04(其它系统也行,如ubuntu16.04)系统电脑,安装环境编译成RV1126能执行代码,并可移植与执行。
二.编译工具安装
CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多。CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt文件转化为make所需要的makefile文件,最后用make命令编译源码生成可执行程序或共享库(so(shared object))。因此CMake的编译基本就两个步骤: cmake. 与 make
ubuntu系统通常是 apt install cmake 基本会安装g++ gcc编译环境,并自动配置/usr中,此细节可网络查询。
RV1109-1126可执行的程序需要使用相关架构的编译器,因为arm板子,则使用arm相关编译,并安装到ubuntu20.04系统中,安装如下:
(1)下载交叉编译工具
交叉编译器:交叉编译器可以使我们在主机上编译出可以在嵌入式设备上运行的程序
下载地址:Downloads | GNU-A Downloads – Arm Developerhttps://developer.arm.com/downloads/-/gnu-a
(2)下载后解压,解压命令
tar -xvf gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tar
(3)解压完成后将解压目录设置到bash里,设置环境变量
export PATH=/绝对路径/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin:$PATH