文章目录

  • 一、概述
  • 二、Linux服务器开发环境搭建
    • 2.1、发布包使用Linux服务器系统版本
    • 2.2、网络环境搭建
    • 2.3、安装依赖包
    • 2.4、交叉编译工具链介绍

一、概述

本节主要介绍了如何在本地搭建编译环境来编译Rockchip Buildroot Linux SDK源代码。当前SDK只支持
Linux环境下编译,并提供Linux下的交叉编译工具链。
一个典型的嵌入式开发环境通常包括Linux 服务器、Windows PC和目标硬件版,典型开发环境如下图所示。

  • Linux 服务器上建立交叉编译环境,为软件开发提供代码更新下载,代码交叉编译服务。
  • Windows PCLinux 服务器共享程序,并安装MobaXterm,通过网络远程登陆到 Linux 服务器,进行交叉编译,及代码的开发调试。
  • Windows PC 通过串口和 USB 与目标硬件板连接,可将编译后的镜像文件烧写到目标硬件板,并调试系统或应用程序。

二、Linux服务器开发环境搭建

Rockchip Linux SDK是在 Ubuntu 18.04 以上系统开发测试的。因此,我们推荐使用Ubuntu 18.04以上系统进行编译。其他版本没有具体测试,可能需要对软件包做相应调整。
除了系统要求外,还有其他软硬方面的要求。

  • 硬件要求:64位系统,硬盘空间大于40G。如果您进行多个构建,将需要更大的硬盘空间。
  • 软件包依赖:除了python 2.7make 3.8git 1.7之外,还需要安装一些额外的软件包,将在软件包安装章节中列出。

2.1、发布包使用Linux服务器系统版本

SDK开发环境安装如下版本Linux 系统,SDK默认均以此Linux 系统进行编译:

Ubuntu 18.04.4 LTS Linux version 4.15.0-109-generic (buildd@lgw01-amd64-010) (gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)) #110-Ubuntu SMP Tue Jun 23 02:39:32 UTC 2020

2.2、网络环境搭建

请用户自行配置网络,并安装nfssambassh 等网络组件。

2.3、安装依赖包

SDK 开发环境是在 Ubuntu 系统上开发测试。我们推荐使用 Ubuntu 18.04 的系统进行编译。其他的Linux 版本可能需要对软件包做相应调整。除了系统要求外,还有其他软硬件方面的要求。

  • 硬件要求:64 位系统,硬盘空间大于40G。如果您进行多个构建,将需要更大的硬盘空间;
  • 软件要求:Ubuntu 18.04 系统;
  • 编译 SDK 环境搭建所依赖的软件包安装命令如下:
sudo apt-get install repo git ssh make gcc libssl-dev liblz4-tool \
expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \
qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib unzip \
device-tree-compiler python-pip ncurses-dev pyelftools \

建议使用 Ubuntu18.04 系统或更高版本开发,若编译遇到报错,可以视报错信息,安装对应的软件包。

2.4、交叉编译工具链介绍

鉴于Rockchip Buildroot SDK目前只在Linux下编译,我们也仅提供了Linux下的交叉编译工具链。其中U-BootKernel使用的编译工具链预置目录在prebuilt/gcc下,buildroot使用该开源软件中编译出来的工具链。

U-BootKernel编译工具链:

prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux- gnu/bin/aarch64-linux-gnu-

对应版本:

gcc version 6.3.1 20170404 (Linaro GCC 6.3-2017.05)

Buildroot编译工具链

64位系统:
buildroot/output/rockchip_rk356x/host/bin/aarch64-buildroot-linux-gnu-
32位系统:
buildroot/output/rockchip_rk356x/host/usr/arm-linux-gcc

对应版本:

gcc version 9.3.0 (Buildroot 2018.02-rc3-02723-gd3fbc6ae13)

如果需要其他平台或版本的工具链,需自行编译。
上述环境准备好后,Linux服务器开发环境搭建已完成,可以下载编译源代码了。

RK3568平台开发系列讲解(环境篇)RK3568 SDK Linux编译服务器开发坏境搭建相关推荐

  1. vscode中安装webpack_leaflet-webpack 入门开发系列一初探篇(附源码下载)

    前言 leaflet-webpack 入门开发系列环境知识点了解: node 安装包下载 webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址w ...

  2. Yocto系列讲解[入门篇] 1 - 快速入门熟悉Yocto的构建

    By: fulinux E-mail: fulinux@sina.com Blog: https://blog.csdn.net/fulinus 喜欢的盆友欢迎点赞和订阅! 你的喜欢就是我写作的动力! ...

  3. C/C++ Linux后台服务器开发高级架构师学习知识点路线总结(2021架构师篇完整版)

    C/C++ Linux后台服务器开发高级架构师学习知识点路线总结(2021架构师篇完整版) 前言: 小编之前有跟大家分享过一篇架构师体系知识点总结的文章,今天在原来的基础上有所改变更新(2021版). ...

  4. C/C++ Linux后台服务器开发高级架构师学习知识点路线总结(2022架构师篇完整版)

    C/C++ Linux后台服务器开发高级架构师学习知识点路线总结(2021架构师篇完整版) 前言: 小编之前有跟大家分享过一篇架构师体系知识点总结的文章,今天在原来的基础上有所改变更新(2021版). ...

  5. C/C++ Linux 后台服务器开发高级架构师学习知识路(架构师篇)

    @[前言: 小编从事c方面10多年的工作经验.今天跟大家分享一下我总结出来的一系列 C/C Linux后台服务器开发的学习路线.从Linux开发工程师-Linux后台开发工程师-Linux高级互联网架 ...

  6. Linux高性能服务器开发——进程篇

    本文主要是学习Linux高性能服务器开发需要提前了解的知识,后续还会涉及到虚拟内存方面的内容,各位看官可以多了解了解,看到文章内有将的不清楚或者讲错的地方请各位一定留言,我看到后会第一时间验证并修正的 ...

  7. ngrok服务器搭建_C/C++ Linux 后台服务器开发高级架构师学习知识路线总结

    前言: 小编也是从事c方面10多年的工作经验.今天跟大家分享一下我总结出来的一系列 C/C Linux后台服务器开发的学习路线.从Linux开发工程师-Linux后台开发工程师-Linux高级互联网架 ...

  8. C/C++ Linux 后台服务器开发高级架构师学习知识路线总结

    前言: 小编也是从事c方面10多年的工作经验.今天跟大家分享一下我总结出来的一系列 C/C Linux后台服务器开发的学习路线.从Linux开发工程师-Linux后台开发工程师-Linux高级互联网架 ...

  9. Linux 高性能服务器开发笔记:Reactor 模型定时器 | 网络编程定时器

    本文主要根据游双书本 Linux 高性能服务器开发 学习分析 linux 网络编程常用到的定时器模型,配备详细理解和分析,同时分析了 Linux 内核中定时器的低精度时间轮和高精度定时器实现思路还有 ...

  10. Linux - 网络服务器开发(全)

    文章目录 Linux - 网络服务器开发(Ubuntu) Linux - 服务端开发 服务端开发 测试连接 Linux - 客户端开发 客户端开发 测试连接 补充 套接字socket 流程图: 网络字 ...

最新文章

  1. Sqoop数据分析引擎安装与使用
  2. 在线项目管理工具比较之二:LiquidPlanner
  3. 3164 质因数分解
  4. wtl重载 CListViewCtrl,及其用法。
  5. 男篮球员特点 里约惨案就是这样造成的
  6. php cms 的模板修改,phpcms v9后台登陆模板修改方法和程序版本更新提示修改方法...
  7. 2.QLabel,QPushButton,QLineEdit,QComboBox,QCheckBox,QRadioButton,QTextEdit,QTextBrowser,QGroupBox,QSl
  8. windows下修改mysql密码 10054错误
  9. 使用C#快速生成二维码 | 真正跨平台方案
  10. 论文浅尝 | 从 6 篇顶会论文看「知识图谱」领域最新研究进展 | 解读 代码
  11. 03_KNN_统计学习方法
  12. hibernate缓存理解
  13. uBLAS——Boost 线性代数基础程序库 (二)
  14. 【vijos1790】拓扑编号
  15. OCR文字识别技术总结(三)
  16. 【NER】命名实体识别:详解BiLSTM_CRF_Pytorch_Tutorial代码
  17. 计算机在热处理上有何应用,计算机在热处理中的应用
  18. 创建visual basic2005 数据库
  19. java socket编程—单客户端与服务器通信
  20. SIP - pjsip Linux Windows 编译安装

热门文章

  1. Go语言值不值得学,发展前景怎么样?
  2. kitti数据集calib.txt文件
  3. 薄膜压力传感器的原理和选型
  4. 计算机主机时间不保存,电脑主板系统时间不能保存
  5. 苹果蓝牙耳机平替哪个好用?商务通话蓝牙耳机推荐
  6. linux达梦服务重启,如何重启达梦数据库服务
  7. 设置路由器当作交换机使用
  8. 屏幕种类有哪些,特点,怎么挑?TFT、LCD、OLED、IPS、TN的含义与区别?高色域、刷新率、广视角、雾面屏又是什么?
  9. 交换机的作用是什么?交换机功能及工作原理详解!
  10. 快速掌握Python的捷径-Python基础前传(1) 1