(Android+Qt最小系统设计方案)RK3288核心板设计之软件开发环境搭建(4.0)
本文主要是开发rk3288的android(和linux)平台软件运行环境搭建描述文档。基于此文档,用户可以了解搭建开发环境目的,怎么搭建开发环境?
同时人编写的语言是否规范,是否合法,是否符合当前处理器设备运行(如处理器是否有相应运算设备资源)这就要一个检查。这在编译中叫做预处理。
为了让代码可读性强,独立性强,就有“对象”的概念。设计者必须有天马星空的思维,编出来的分散各个模块,就需要编译器在编译之前,就要将这些代码有效的组织。
综述。编译器就是将人的思想产生代码编程机器能识别的代码。所以就搭建对应的开发编写/编译的环境。
为了rk3288的linux或者android开发,就要搭建对应的编译环境。
开发一套设备的程序,一般官方会有一套sdk。Rk3288开发android,瑞星微官方提供了开发的sdk。SDK的编译需要运行在Linux的操作系统上。
当前选用的linux操作系统为ubantu,下面为具体搭建步骤如下:
虚拟机和操作系统下载
这里我们使用的虚拟机是VMware Workstation 15 Player.软件下载地址如下:
(https://www.vmware.com/cn.html)。
ubuntu下载地址 http://mirrors.aliyun.com/ubuntu-releases/16.04/
如下图安装好VMware软件后即可进行ubuntu的安装了。
安装ubuntu
SDK开发环境的搭建需要根据Linux的版本进行调整,我们使用的是Ubuntu16.04的系统进行SDK的编译的,需要安装以下软件。
其他版本的系统编译时需要根据编译的LOG进行对应软件的安装(编译时出错,一般为复制时中间的空格问题)。
sudo apt-get install git gcc-arm-linux-gnueabihf 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 |
由于开发android需要java的环境支持,所以这里安卓5.1的编译需要安装JDK7
sudo apt-get install openjdk-7-jdk
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
SDK下载及编译
SDK下载
SDK git下载指令如下,此种方式需要Rockchip授权的密钥。
repo init --repo-url ssh://git@www.rockchip.com.cn/repo/rk/tools/repo
-u ssh://git@www.rockchip.com.cn/repo/rk/platform/manifest -b android-5.1
SDK 目录结
|
SDK 编译
整个SDK的编译分为3部分 uboot、kernel、 Android。
Uboot的编译
完成编译后再uboot目录下产生 rk3288_loader_xxxx.bin uboot.img和 trust.img这三个文件。
Kernel的编译
kernel的编译需要根据实际的硬件信息进行设备树的编译和内核config文件的编写。以RK3288原厂的EVB样机为例,
make ARCH=arm rocckchip_defconfig
make ARCH=arm rk3288-evb-android-rk808-edp-avb.img -j8
这里的 rockchip_defconfig 为RK3288的默认内核配置,我们可以根据自己的实际情况进行删减和添加。
第二条指令就是以设备树文件 rk3288-evb-android-rk808-edp-avb.dts进行内核镜像的编译。
完成以上的编译后内核目录会产生 kernel.img resource.img两个镜像文件。
Android的编译
安卓的编译耗时比较长,此时只需等待其编译完成即可。安卓编译的过程中可能会出现报错一般情况是缺少对应的工具此时根据错误代码安装相应的软件即可。
固件将会复制到在 rockdev/Image-rk3288目录下。
固件的下载
下载软件在官方sdk里面有。打开对应工具后,将硬件的usb otg口接到电脑上,将板子的模式设置成 loader或者maskrom模式后即可通过Android开发工具完成下载。
总结
要完成上述功能,可以搭建rk3288的开发环境。上述的编译和烧录只是粗劣描述,具体见后续核心板出来时,做具体开发时对应文档。
(Android+Qt最小系统设计方案)RK3288核心板设计之软件开发环境搭建(4.0)相关推荐
- 瑞星微RK3288 核心板
产品简介 G3288核心板,是深圳市葡萄雨技术有限公司推出的基于瑞芯微(ROCKCHIP)的RK3288( A17四核)芯片的产品平台. G3288开发平台采用国内优秀芯片厂商瑞芯微(ROCKCHIP ...
- STM32和51最小系统原理图以及PCB板图以及元件库
写在前面 由于最近社团学习AD的时候,作业要求画一个STM32和51的最小系统板,经过一番学习,自己琢磨出了这两个作业 新手上路,大佬勿喷 更新 2021.9.11更新 实在不好意思,有许多网友找我要 ...
- RK3288原理图和PCB,RK3288核心板硬件设计资料汇总
这里整合了RK3288平台的原理图,PCB,核心板开发等一系列硬件设计资料,资料比较全面,需要的自行下载. 1 RK3288核心板原理图 2 RK3288_BOX版原理图,PCB和核心板硬件设计 3 ...
- 龙芯LS1C300B核心板设计
龙芯LS1C300B核心板设计 硬件设计 核心板介绍 软件设计 硬件设计 ps.本核心板属于本人的研究生毕业设计的一部分. 核心板主要参考龙芯开源的智龙开发板进行设计,设计很简单.由于龙芯的LS1C3 ...
- 特高压输电线路在线监测系统方案-A40i 核心板 应用解析-飞凌嵌入式
近年来,随着电力技术的快速发展,我们生活也变得越来越便利.其中,特高压输电线路更是承载着西电东输的重责,将不同地区的发电站.变电站.负荷点连接起来,进行输送或交换. 5G新基建浪潮的兴起,特高压也被列 ...
- 一个dsp最小系统至少要有_DSP最小系统设计方案
基于 TMS320F28335 的 DSP 最小系统设计 摘要 在各大院校的课程教学.实验教学.毕业设计以及电子设计竞赛中,需要应用 DSP 实验系统. 介绍了 TI 公司的 TMS320F28335 ...
- 解决方案 | 基于全志T507核心板设计智能加油机应用
随着社会的发展,机动车辆日益普及,加油站数量也在随之增加.由于人力成本的提高以及顾客对便捷支付和加油效率要求的提高,传统加油站的支付及管理方式越来越不能满足市场需求,快速多变的支付功能将成为未来趋势. ...
- 基于ARM架构Cortex-A7 IMX6ULL 核心板设计核酸自动提取仪显控解决方案
2020年突如起来的新冠肺炎 疫情使"核酸检测"进入了公众的视野,核酸检测从工艺上来说包括核酸提取.扩增与检测.核酸自动提取仪又名核酸自动纯化仪(Nucleic Acid Extr ...
- Mirco2440核心板设计思考
S3C2440的Nand Flash控制器有一个特殊的功能,在S3C2440上电后,Nand Flash控制器会自动的把Nand Flash上的前4K数据搬移到4K内部SRAM中,系统会从起始地址是0 ...
- RK3288开发板,RK3288核心板,瑞芯微RK3288主板资料
本文介绍瑞芯微RK3288的开发板和RK3288芯片技术资料,有需要的可到一牛网论坛中看看 http://bbs.16rd.com/citiao-xinpian-RK3288.html
最新文章
- Java多线程 - AQS详解
- 求a^b前n位和后n位
- Linux系统下提升进程优先级的办法
- 如果城里人拿100万买你的农村宅基地,你愿意吗?
- PHP+MySQL 跨服务器跨数据库数据拷贝系统
- python之父子进程间通信
- mysql导入社工库文件_社工库-数据表结构设计和数据导入
- Win-MASM64汇编语言-and/or指令
- spring boot task实现动态创建定时任务
- python客观题阅卷_利用Python开发智能阅卷系统
- MATLAB基础知识零基础到入门(第一期 基础内容)
- DP动态规划之背包问题(一)
- Linux内核中常见内存分配函数
- 通过wal文件查看lsn和txid,lsn和txid对应关系
- 一文总结Keras的loss函数和metrics函数
- Python中的单行、多行、中文注释
- Nginx域名配置详细介绍
- 【TRIO-Basic从入门到精通教程十六】UDP通讯测试补充
- spa 搜索引擎_夜场SPA搜索引擎收录排名,持久排名
- 如何用python求解方程组_用Python的Numpy求解线性方程组
热门文章
- OSC 第 130 期高手问答 — 究竟什么才是微服务?_黄勇【摘选】
- 001java面试笔记——【java基础篇】从团800失败面试总结的java面试题
- VirtualDub在处理WMV文件时显示“MISSING CODEC”怎么办
- _nullterminated
- 软件公司使用XPlanner进行敏捷项目计划和进度跟踪管理
- html文件用excel打开乱码,如何解决IE打开Word、Excel乱码问题
- 从0开始的TypeScriptの八:类
- Linux学习之路-基础命令、管道、软连接【3】---20171120
- IP数据报之首部长度解析
- 算法-贪心/动态规划-买卖股票的最佳时机