1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 《Linux操作系统 - RK3288开发笔记》第2章 G-3288-02开发环境搭建

《Linux操作系统 - RK3288开发笔记》第2章 G-3288-02开发环境搭建

时间:2021-09-02 22:39:02

相关推荐

《Linux操作系统 - RK3288开发笔记》第2章 G-3288-02开发环境搭建

2.1开发环境

Windows 下有很多虚拟机软件,目前市面上流行的有 VMware 和 VirtualBox。 VMware 分为收费专业版 Workstation Pro 和非商用免费版 Workstation Player,推荐使用 Workstation Player。笔者这里使用的编译主机的Ubuntu 16.04,关于Workstation和Ubuntu安装笔者这里不在赘述,网上资料很多,笔者默认已经装好Workstation和Ubuntu。

2.2安装依赖包

更新主机的源列表

$ sudo apt-get update

安装依赖包:

$sudo apt-get install git u-boot-tools device-tree-compiler mtools parted libudev-dev libusb-1.0-0-dev python-linaro-image-tools linaro-image-tools libssl-dev autotools-dev libsigsegv2 m4 libdrm-dev curl sed make binutils build-essential gcc g++ bash patch gzip bzip2 perl tar cpio python unzip rsync file bc wget libncurses5 libglib2.0-dev openssh-client lib32stdc++6 gcc-aarch64-linux-gnu libncurses5-dev lzop libssl1.0.0 libssl-dev expect lsb-core

2.3安装配置交叉编译工具链

在Linaro 官网中有很多种 GCC 交叉编译工具链,因为我们所使用的 RK3288开发板是一个 Cortex-A17 内核的开发板,因此选择 arm-linux-gnueabihf。

编译编译地址

图中有很多种交叉编译器,我们只需要关注这两种: gcc-linaro-7.5.0-.12-i686_arm-linux-gnueabihf.tar.xz 和 gcc-linaro-7.5.0-.12-x86_64_arm-linux-gnueabihf.tar.xz,第一个是针对 32 位系统的,第二个是针对 64 位系统的。大家根据自己所使用的 Ubuntu 系统类型选择合适的版本,比如我安装的 Ubuntu 14.04 是 64 位系统,因此我要使用 gcc-linaro-7.5.0-.12-x86_64_arm-linux-gnueabihf.tar.xz。

 交叉编译器安装

将交叉编译器拷贝Ubuntu中的/opt目录下(没有opt则新建该目录),进行如下步骤:

1.解压gcc-linaro-7.5.0-.12-x86_64_arm-linux-gnueabihf.tar.xz, 用命令

$sudo tar -xvf gcc-linaro-7.5.0-.12-x86_64_arm-linux-gnueabihf.tar.xz //必须用超级用户模式

2.编辑~/.bashrc文件

$ vi ~/.bashrc

在文件最后增加一行

export PATH=$PATH:/opt/gcc-linaro-7.5.0-.12-x86_64_arm-linux-gnueabihf/bin

保存退出

3.运行 source ~/.bashrc 让文件生效

$ source ~/.bashrc

 交叉编译器验证

方法一:在命令行下输入 arm-l 然后按tab键看会不会自动补全

方法二:输入: arm-linux-gnueabihf-gcc -v

表示配置成功!

从图中可以看出当前交叉编译器的版本号为7.5.0,说明交叉编译工具链安装成功。使用刚刚安装的交叉编译器的时候使用的命令是“arm-linux-gnueabihf-gcc”,“arm-linux-gnueabihfgcc”的含义如下:

1.arm 表示这是编译 arm 架构代码的编译器。

2.linux 表示运行在 linux 环境下。

3.gnueabihf 表示嵌入式二进制接口。

4.gcc 表示是 gcc 工具。

最好的验证验证方法就是直接编译一个例程,我们就编译第一个裸机例程“hello.c”试试。

$vim hello.c

#include <stdio.h>int main(){printf("Hello, G-3288-02!\n");return 0;}

$ arm-linux-gnueabihf-gcc hello.c -o hello

使用如下命令查看 hello文件信息:

$ file hello

从图中可以看到 hello是 32 位 LSB 的 ELF 格式文件,目标机架构为 ARM,说明我们的交叉编译器工作正常。

接下来可以将上述程序放到板子中运行。

这里推荐使用adb工具,命令如下:

adb push [PC文件路径] [开发板目录]

adb push D:/share/hello /root

接着用产口登开发板。

进入root目录,修改hello 的可执行权限,然后即可运行程序。

#chmod 777 hello

#./hello

小贴士:Ubuntu和Windows互传文件-创建链接

1)虚拟机->设置->共享文件夹

2)选择下一步,然后选择共享文件夹路径

再下一步->完成就可。

3)进行软链接

输入命令:

$ln -s /mnt/hgfs/share

好了,现在Ubuntu和Windows就能互传文件了。

欢迎访问我的网站

BruceOu的哔哩哔哩

BruceOu的主页

BruceOu的博客

BruceOu的CSDN博客

BruceOu的简书

BruceOu的知乎

资源获取方式

1.关注公众号[嵌入式实验楼]

2.在公众号回复关键词[RK3288]获取资料提取码

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。