Rockchip User Guide SDK Application And Synchronization
:::info 文档信息
发布版本:2.2 · 页数:23 · 语言:英文
原始文档:Rockchip_User_Guide_SDK_Application_And_Synchronization_CN.pdf
:::
在线预览
若预览无法显示,请直接下载 PDF 后用本地阅读器打开。
Rockchip
SDK 申请及同步指南
发布版本:2.2
日期:2022.02
Rockchip SDK 申请及同步指南 目录
前言
概述
产品版本
| 芯片名称 | |
|---|---|
| RK 所有平台 |
读者对象
软件工程师, FAE
修订记录
| 日期 | 版本 | 作者 | 修改说明 | ||||
|---|---|---|---|---|---|---|---|
| 2017-12-27 | v1.0 | LB | 初始版本 | ||||
| 2018-03-21 | V1.1 | LB | 增加SDK 版本 | ||||
| 2018-04-24 | V1.2 | LB | 增加SDK 版本 | ||||
| 2018-05-14 | V1.3 | LB | 增加SDK 版本 | ||||
| 2018-09-06 | V1.4 | LB | 增加SDK 版本 | ||||
| 2019-01-11 | V1.5 | LB | 更新SDK 版本 | ||||
| 2019-05-09 | V1.6 | LGS、LB | 增加章节SDK 同步异常处理 | ||||
| 2019-07-25 | V1.7 | LGS | 文档命名合理化 | ||||
| 2019-12-03 | V1.8 | LB | 更新SDK 版本、增加开源SDK 和 开源社区章节 | ||||
| 2020-04-28 | V1.9 | LB | 更新SDK 版本、增加文档和工具说 明 | ||||
| 2020-07-17 | V2.0 | LB | 更新SDK 版本 | ||||
| 2021-02-02 | V2.1 | LB | 更新SDK 版本 | ||||
| 2021-02-23 | V2.2 | LB | 更新SDK 版本 |
本文档适用范围:
使用RK 平台的所有用户(包括 RK 的用户及RK 的工程师)Rockchip SDK 申请及同步指南 插图目录
插图目录
图 2-1 获取SDK 流程 ......................................................................................................................................... 2-1图 5-1 代码管理中转站 ....................................................................................................................................... 6-1 Rockchip SDK 申请及同步指南 1 概述
1 概述
Rockchip 的本指南为了更好的服务用户,在这里列出了 Rockchip 的 SDK 申请方法及流程,包括了Rockchip 每款芯片支持的 Android OS 版本或Linux OS 等,及每个版本的推荐指数。这里包括老用户需新增 SDK 和新用户第一次申请 SDK,都需按照此流程进行。
1-1 Rockchip SDK 申请及同步指南 2 使用说明
2 使用说明
本章节主要介绍 Rockchip 的SDK 申请流程:这包括公钥、SDK 申请表及资料接收窗口等内容。
2.1 SDK 获取
Rockchip SDK(包括所有正式发布的软硬件资料)申请流程如下:
图 2-1 获取 SDK 流程从Rockchip 拷贝(或者从 FTP 下载)的 SDK 只是一个基础包,这 SDK 完整版本需要贵司在此基础上通过网络获取(同步),这同步方法,请参考对应的 SDK 发布说明文档(如《RK3399_ANDROID7.1-TABLET-SDK_V1.00 发布说明.pdf》)。
2-1 Rockchip SDK 申请及同步指南 2 使用说明建议:常与Rockchip 服务器保持同步更新,维持代码在最新状态,能体现出 Rockchip 平台的新功能。
2.2 SDK 同步
SYNC(sync)申请开通公钥权限,需遵循下列步骤:
2.2.1 生成公钥
在Ubuntu OS 的用户目录下执行如下命令,即可:
| xx@ubuntu:~$ | cd ~ |
|---|---|
| xx@ubuntu:~$ | ssh-keygen -t rsa -C XX@rock-chips.com |
注意:生成公钥只需执行上述命令,无需输入密码。XX@rock-chips.com 是贵司的工作邮箱,不建议使用个人私人邮箱。
2.2.2 公钥命名规则
Rockchip 规范了公钥命名规则。请用贵公司名的英文或者汉语拼音,这需全部用小写。将~/.ssh 目录下的 id_rsa.pub 文件重命名,实例如下:规范命名的公钥名:rockchip.pub;不规范命名的公钥名:Rockchip.pub, ROCKchip.pub, RockChip.pub。
2.2.3 备份公钥
请用户妥善备份贵司的公钥,以免遗失,导致与Rockchip 服务器无法同步代码。
xx@ubuntu:~$ tar zcvf id_ras_backup.tag.gz ~/.ssh
2.2.4 发送邮件
请你把公钥和表格(详见:2.2.5 申请表),使用你的工作邮箱来发邮件给 Rockchip 对应的商务,并抄送上 daisy.hu@rock-chips.com 和fae@rock-chips.com。新用户第一次在Rockchip 申请 SDK,这邮件需包括公钥和表(2.2.5 申请表);老用户新增 SDK 版本,也需提供公钥和申请表。
2.2.5 申请表
由于Rockchip 的芯片和 SDK 版本都较多,方便广大用户能准确描述需要的 SDK 版本号(详见:3 SDK 本版表),传达信息给Rockchip 的FAE。请所有用户在申请新的 SDK 时,按照如下要求填写Rockchip 的 SDK 申请表:
| Rockchip SDK 申请 | |||
|---|---|---|---|
| 公钥名 | 是否是替换新公钥 | 申请开通的SDK 版本号 | 已开通的SDK 版本号 |
| rockchip.p ub | 否 | RK3288 ANDROID6.0-MID- _ SDK V1.00 20160301 _ _ | RK3368 ANDROID5.1- _ SDK V1.00 20150415 _ _ |
2-2 Rockchip SDK 申请及同步指南 2 使用说明
表 2-1 Rockchip SDK 申请表公钥名:贵司使用的公钥名称;是否是替换新公钥:由于一些特殊原因,造成原公钥不能使用,需要替换新公钥;如果需要替换,必须通过 Rockchip 对应的商务端确认后才可以;开通的工程:当前申请的工程代码名称,可以是多个;已开通的SDK 版本号码:请列出已开通过 Rockchip 平台 SDK 版本,如果没有开通,请填写“无”,不能乱填,否则会导致已开通过的 SDK 可能无法与Rockchip 服务器同步代码。
2.3 资料接收窗口
这资料接口人是与Rockchip FAE 对接,接收原厂提供的软硬件资料和接收Rockchip 发布的重大信息。这需提供此接口人的联系电话(个人和公司的座机)和工作邮箱。
资料接收窗口是一家公司只能有一个,并做好备份。贵司内部人员的资料需求,请向贵司窗口人确认。如资料接收窗口有变动,请贵司务必邮件通知到我司 FAE 邮箱(fae@rock- chips.com)并抄送上Rockchip 对应的商务,以免错过相关的通知邮件。
2-3 Rockchip SDK 申请及同步指南 4 文档与工具
3 SDK 版本
本章节主要介绍 Rockchip 的SDK 版本:这包括 Rockchip 官方发布的三个方式,一个是在Rockchip 服务器,是需要 SDK 申请流程;另外一个是开源 Github 服务器,这是不需要SDK 申请流程,用户可以直接下载;还有一个开源社区ToyBrick 上,我们提供了少部分平台版本下载,也是不需要SDK 申请流程的。
3.1 官方 SDK 版本
如下是 Rockchip 官方发布的芯片支持 Android OS 版本和 Linux OS 及每个版本支持产品类型及现在的技术支持力度,具体如下:
| 平台名 | SDK 版本号 | 推荐指数 |
|---|---|---|
| RK3588(S) | RK3588 ANDROID12.0 SDK RELEASE _ _ _ | ***** |
| RK3588 LINUX EDGE SDK RELEASE _ _ _ _ | ***** | |
| RK3588 LINUX SDK RELEASE _ _ _ | ***** | |
| RK3568(6) | RK3568(6) ANDROID12.0 SDK RELEASE _ _ _ | ***** |
| RK3568(6) ANDROID11.0 SDK RELEASE V1.0.0 20210106 _ _ _ _ _ | *** | |
| RK356x ANDROID11.0 BOX SDK V1.0.0 20210108 _ _ _ _ _ | *** | |
| RK3566 ANDROID11.0 EBOOK SDK RELEASE V1.0.0 20210 _ _ _ _ _ _ 126 | ***** | |
| ROCKCHIP RK356X LINUX SDK ALPHA V0.0.1 20201211 _ _ _ _ _ _ | ***** | |
| RK3399 | Rockchip Android10.0 SDK Release 20191211 _ _ _ _ | ***** |
| RK3399 Android9.0 SDK V1.0 20190104 _ _ _ _ | ** | |
| RK3399 Android8.1 SDK V1.00 20180517 _ _ _ _ | * | |
| RK3399 ANDROID7.1-Industry-SDK V1.0 _ _ | ***** | |
| RK3399 ANDROID7.1-BOX-SDK V1.00 20170414(停止更修) _ _ _ | * | |
| RK3399 ANDROID7.1-TABLET-SDK V1.00(停止更修) _ _ | * | |
| RK3399 ANDROID6.0-VR-TABLET-SDK V1.00(停止更修) _ _ | * | |
| RK3399 ANDROID6.0-BOX-SDK V1.00 20160809(停止更修) _ _ _ | * | |
| RK3399 LINUX SDK RELEASE V2.5.1 20201203 _ _ _ _ _ | ***** | |
| RK3399PRO | Rk3399Pro Android9.0 SDK V1.00 20190806 _ _ _ _ | ***** |
| Rk3399Pro Android8.1 SDK Beta V0.1 20181130 _ _ _ _ _ | ** | |
| RK3399PRO LINUX SDK V1.4 20201203 _ _ _ _ | ***** |
3-1 Rockchip SDK 申请及同步指南 4 文档与工具
| RK1808 | RK1808 Linux V1.0.0 20181227 _ _ _ | ***** |
|---|---|---|
| RK3288(W) | RK3288(W Version) ANDROID11.0 SDK RELEASE _ _ _ _ | ***** |
| RK3288 ANDROID10.0 SDK Release _ _ _ | ** | |
| RK3288(W-Version) Android9.0 SDK V1.0 20190410 _ _ _ _ | ** | |
| RK3288W ANDROID8.1 SDK V1.0 20180508 _ _ _ _ | * | |
| RK3288 Linux SDK V2.0 20180620 _ _ _ _ | ***** | |
| RK3288 ANDROID7.1 TABLET-SDK V1.00 20170629 _ _ _ _ | ***** | |
| RK3288 Linux SDK V1.0 20170223 _ _ _ _ | * | |
| RK3288 ANDROID6.0-VR-SDK V1.00 20160826(停止更修) _ _ _ | * | |
| RK3288 UAV-SDK V1.00 20160330(停止更修) _ _ _ | * | |
| RK3288 ANDROID6.0-MID-SDK V1.00 20160301(停止更修) _ _ _ | * | |
| RK3288 ANDROID5.1-RBOX-SDK V1.00 20150722 (停止更 _ _ _ 修) | * | |
| RK3288 ANDROID5.1-SDK V1.00 20150515 (停止更修) _ _ _ | * | |
| RK3288 ANDROID4.4.2 RBOX ALIYUNOS V1.8.0(停止更修) _ _ _ _ | * | |
| RK3288 ANDROID4.4.2-SDK V1.0 140618(停止更修) _ _ _ | * | |
| RK3288 R-BOX ANDROID4.4.2-SDK V1.0.0 (停止更修) _ _ _ | * | |
| RK3368(H) | RK3368 ANDROID10.0 SDK Release _ _ _ | ***** |
| RK3368 ANDROID9.0 SDK V1.0 20190411 _ _ _ _ | ** | |
| RK3368H&RK3368 ANDROID8.1-MID-SDK V1.00 20180123 _ _ _ | ** | |
| RK3368H&RK3368 Android7.1 SDK 20170401 _ _ _ | ** | |
| RK3368 ANDROID7.1-BOX-SDK V1.00 20170825 _ _ _ | ** | |
| RK3368 ANDROID6.0-RBOX-SDK V1.00 20160907(停止更修) _ _ _ | * | |
| RK3368 ANDROID6.0-MID-SDK V1.00 20160122(停止更修) _ _ _ | * | |
| RK3368 ANDROID5.1-SDK V1.00 20150415(停止更修) _ _ _ | * | |
| RK3188 | RK3188 ANDROID5.1-MID-SDK V1.00 20150730 _ _ _ | **** |
| RK3188&RK3066 R-BOX ANDROID4.4.2-SDK V1.0.0 140318 _ _ _ _ | ** | |
| RK3188 KitKat ANDROID4.4.2-SDK V1.00 20131214 (停止更 _ _ _ _ 修) | ** | |
| RK3229 | RK3229 ANDROID10.0 BOX SDK V1.0 20200109 _ _ _ _ _ | ***** |
| RK3229 ANDROID9.0 BOX SDK V1.0 2019012 _ _ _ _ _ | * | |
| RK3229 ANDROID8.1-BOX-SDK V1.0 20180423 _ _ _ | * |
3-2 Rockchip SDK 申请及同步指南 4 文档与工具
| RK3229 ANDROID7.1 BOX-SDK V1.00 20170831 _ _ _ _ | * | |
|---|---|---|
| rk3229 wireless dongle v1.00 20161130 _ _ _ _ | * | |
| RK3229 ANDROID6.0-RBOX-SDK V1.00 20160831 _ _ _ | * | |
| RK3229 ANDROID5.1-RBOX-SDK V1.00 20160318(停止更修) _ _ _ | * | |
| RK3229 ANDROID4.4-SDK V1.00 20151214(停止更修) _ _ _ | * | |
| RK3328 | RK3328 ANDROID11.0 BOX SDK V1.0.1 20201030 _ _ _ _ _ | ***** |
| RK3328 ANDROID10.0-BOX V1.0 20191125 _ _ _ | * | |
| RK3328 ANDROID9.0-BOX-SDK V1.0 20181206 _ _ _ | ** | |
| rk3328 linux v1.00 20170419 _ _ _ | ***** | |
| RK3328 ANDROID8.1-BOX-SDK V1.0 20180319 _ _ _ | ** | |
| RK3328 ANDROID7.1 BOX-SDK v1.00 20170223(停止更修) _ _ _ _ | * | |
| RK3326 (PX30) (RK3358M) (RK3358J) | RK3326&PX30 ANDROID11.0 SDK RELEASE _ _ _ | ***** |
| Rockchip Android10.0 SDK Release 20191211 _ _ _ _ | ** | |
| RK3326 Android Pie release 2080925 _ _ _ _ | ** | |
| RK3326 LINUX SDK RELEASE V1.3.0 20200224 _ _ _ _ _ | ***** | |
| RK3326&PX30 ANDROID8.1-TABLET-SDK V1.0.0 20180505 _ _ _ | * | |
| RK3308 | RK3308 LINUX SDK V1.00 20180510 _ _ _ _ | ***** |
| PX5 | PX5 Android 8.0 release 20180726 _ _ _ _ | ***** |
| PX5 Android6.0-SDK V0.1(停止更修) _ _ | * | |
| RKPX3 | RKPX3 ANDROID7.1-SDK V0.1 20170303 _ _ _ | ***** |
| PX3SE | PX3SE LINUX SDK V0.2 _ _ _ | *** |
| PX3SE ANDROID7.1 SDK V1.00 20170719 _ _ _ _ | ***** | |
| RK3128(H) | RK3128H ANDROID8.1-BOX-SDK V1.0 20180601 _ _ _ | ***** |
| RK3128H ANDROID4.4.4 BOX SDK V1.00 20180313 _ _ _ _ _ | **** | |
| RK3128 ANDROID7.1-BOX-SDK V1.00 20170823 _ _ _ | **** | |
| RK3128 ANDROID4.4.4-RBOX-SDK CMCC V1.0 20150317 _ _ _ _ | * | |
| RK3128 ANDROID4.4.4-RBOX SDK V1.0 20141010 (停止更 _ _ _ _ 修) | * | |
| RK3128 ANDROID4.4.4 RBOX ALIYUNOS V1.8.0(停止更修) _ _ _ _ | * | |
| RK3126(C) | Rockchip Android10.0 SDK Release 20191211 _ _ _ _ | ***** |
| RK312X Linux SDK Beta V0.1.1 20190429 _ _ _ _ _ | **** |
3-3 Rockchip SDK 申请及同步指南 4 文档与工具
| RK3126C ANDROID9.0 SDK V1.0 20190103 _ _ _ _ | *** | |
|---|---|---|
| RK3126C ANDROID8.1-SDK V1.00 20180105 _ _ _ | * | |
| RK312X ANDROID7.1-TABLET-SDK V1.00 20170519 _ _ _ | * | |
| RK312X ANDROID6.0-SDK V1.00 20151230(停止更修) _ _ _ | * | |
| RK312X ANDROID5.1-SDK V1.00 20150423(停止更修) _ _ _ | * | |
| RK312X ANDROID4.4.4-SDK V1.0 20140922(停止更修) _ _ _ | * | |
| RK3036 | rk3036 wireless dongle v1.00 20161130 _ _ _ _ | *** |
| RK3066 | RK3188&RK3066 R-BOX ANDROID4.4.2-SDK V1.0.0 140318 _ _ _ _ | *** |
| RK3066 ANDROID4.4.2-SDK V1.00 2014.02.12 _ _ _ | *** | |
| RV1126(09) | RV1126 RV1109 LINUX V1.0.0 20200616 _ _ _ _ | ***** |
| UVC rv1126 rv1109 linux ai camera v1.6.2 20201204 _ _ _ _ _ _ _ | ***** | |
| RV(K)1108 | RV1108 LINUX SDK V2.1 20190329 _ _ _ _ | ***** |
| RV1108 CVR V1.4 20180604 _ _ _ | *** | |
| RV1108 CVR SDK V1.1 20170821 _ _ _ _ | * | |
| RV110X LINUX IPC SDK V1.2 20170607 _ _ _ _ _ | * | |
| RKNanoD | RKNanoD Wireless Audio SDK V1.6 20161114 _ _ _ _ _ | **** |
| RKNanoD Wireless Audio SDK V1.2 _ _ _ _ | * | |
| RKNanoD MP3 SDK V1.1 20160516 _ _ _ _ | * | |
| RKNanoD Wireless Audio SDK V1.1 _ _ _ _ | * | |
| RK2928 | RK2928 wireless hdmi dongle-SDK V2.0.0 _ _ _ _ | * |
| RK292X | RK292X ANDROID4.4.2-SDK V1.00 20140302 _ _ _ | * |
| RK3168 | RK3168 ANDROID4.4.2-SDK V1.10 20140103 _ _ _ | * |
| RK3026/3028A | RK3026/3028A KitKat ANDROID4.4.2-SDK V1.00 20131217 _ _ _ _ | * |
| SOFIA3GR | SOFIA3GR Android6.0-SDK 20160428 _ _ | * |
| SOFIA3GR ANDROID5.1-SDK 20150409 _ _ | * | |
| XMM6321 | XMM6321 Phone Android4.4-SDK _ _ | * |
| XMM6321 Watch Android4.4-SDK 20151015 _ _ _ | *** | |
| RK2206 | RK2206 FreeRTOS SDK Release V1.0.0 20200115 _ _ _ _ _ | ***** |
| RK2106 | RK2106 FreeRTOS BETA V0.1 20181229 _ _ _ _ | ***** |
表 3-1 SDK 版本列表
注:3-4 Rockchip SDK 申请及同步指南 4 文档与工具
① 推荐指数是根据现有客户使用状况列出来的;② 当前长期维护的两个行业产品类产品的Android SDK 版本:RK3399_ANDROID7.1-Industry-SDK_V1.0 ⚫ RK3288_ANDROID7.1_TABLET-SDK_V1.00_20170629 ⚫
3.2 开源 SDK 版本
我们Rockchip 在github(https://github.com/rockchip-linux/repo)开源了部分平台的Linux SDK,现在已有RK3399PRO、RK3399、RK3288、RK1808、RK3328 和PX30 平台。具体的mainifest:https://github.com/rockchip-linux/manifests。这里的 Linux SDK 与Rockchip 服务器的Linux 是保持同步更新的。
3.3 开源社区
我们Rockchip 官方推出的 AI 开发平台ToyBrick 开源社区,平台旨在提供高效、便捷、稳定的开发环境,让开发者迅速上手 AI 应用开发,加速 AI 行业产品研发进程,提升行业应用生态。这里有 RK3399PRO 和RK1808 两个平台的内容,包括对应开源板购买方式、SDK(Android OS 和Linux OS)下载、硬件资料、软件开发文档和工具等,具体详见官方链接地址:http://t.rock-chips.com/forum.php。ToyBrick 开源板的问题是需要提交此开源社区来解决,不是在Rockchip Bug 系统(https://redmine.rockchip.com.cn/)上处理。如果您有特殊情况,请联系Rockchip 对应的商务窗口协调。
3-5 Rockchip SDK 申请及同步指南 4 文档与工具
4 文档与工具
我们Rockchip 官方提供给客户的文档和工具,是与对应的 SDK Kit 一起释放给用户的。现在有 Android OS 和Linux OS 两套 SDK 版本,分别存放的文档和工具的路径有差异。
4.1 Android SDK
如下是 Android OS SDK 存放文档和工具的路径:Rockchip 存放文档路径是:SDK 根目录下的RKDocs 文件夹中;Rockchip 存放工具路径是:SDK 根目录下的RKTools 文件夹中。
4.2 Linux SDK
如下是 Linux OS SDK 存放文档和工具的路径:Rockchip 存放文档路径是:SDK 根目录下的 docs 文件夹中;Rockchip 存放工具路径是:SDK 根目录下的 tools 文件夹中。
注:我们的文档和工具都会跟随代码更新而同步更新相关的版本,这是不同的 SDK 版本是不同的版本的文档和工具。所以客户开发过程中一定要使用对应的 SDK 中的工具版本,如果代码和工具的版本不是一一对应,可能会出现固件下载失败或者是下载固件成功后系统启动失败等异常现象。
4-1 Rockchip SDK 申请及同步指南 5 关于投诉及建议
5 投诉及建议
若贵司遇到流程上的麻烦或者沟通不清楚的,请发送邮件给Rockchip 技术窗口(同时抄送上Rockchip 对应的商务接口人)或者电话确认。
| 联系方式 姓名 | 邮箱 | 电话 |
|---|---|---|
| FAE | fae@rock-chips.com | 0755-86690899 |
表 5-1 联系方式
5-1 Rockchip SDK 申请及同步指南 6Q&A
6 Q&A
在这里简单罗列了Rockchip 用户在申请 SDK 遇到的常见问题。
6.1 SDK 管理
请用户妥善保存和合理管控Rockchip SDK,Rockchip 概不重复提供资料。如果有资料遗失,需与Rockchip 对应的商务窗口申请。
6.2 SDK 代码更新
6.2.1 SDK 同步
每个基础包都要单独申请代码同步权限,否则无法同步 Repo 到Rockchip 服务器更新代码。同步方法请参考对应的 SDK 发布说明(与基础包一起提供给客户)。
6.2.2 SDK 多个平台申请
Rockchip 的不同芯片平台的 SDK 版本需单独向对应的商务端申请。如,贵司已拿到RK3288 的SDK,现在新的项目需要 RK3399 的 SDK,需联系Rockchip 对应的商务端进行商务确认,由商务端协助申请,待流程审批批准后技术部才可开放资料给贵司。
6.3 版本控制器
Rockchip 发布的SDK 代码管理沿用Google 的方式是 REPO,不建议用户删掉 SDK 的REPO 和GIT 的版本记录。由于一些用户的历史原因,要删掉 SDK 的版本记录,单独创建一个 GIT 或者SVN 等版本控制器内部管理开发,可以参考如下方法。
Rockchi
用户
用户
p
中转站
服务器
服务器
图 6-1 代码管理中转站维护两套代码:一个中转站,一个开发用。用户中转站作用,是与 Rockchip 的服务器同步代码后,把差异部分代码搬移到用户服务器上;这也是用户与 Rockchip 核对代码版本的参照物。用户服务器的作用,用户可以根据使用习惯个性化。这样有两个好处:1、Rockchip 原厂在配合处理问题,能清晰确认代码具体版本信息;2、解决有些用户开发的服务器不能连接外网(无法Rockchip 服务器同步代码),搬移Rockchip 服务器更新的内容。
6-1 Rockchip SDK 申请及同步指南 6Q&A
6.4 SDK 同步异常处理
6.4.1 SDK 同步确认
同步代码前,需要做如下确认:a. 确认在“/.ssh/”目录下含有 id_rsa(私钥),id_rsa.pub(公钥)的 key 文件(注:发送给 RK 申请 SDK 权限的公钥需要按要求重新命名(如:2.2.2 章节),在本地/.ssh 目录下的公私钥不能重新命名),同时known_hosts 文件是 ssh 时会自动生成。使用如下命令方式查看具体文件:
xx@ubuntu:~$ ls -l ~/.ssh/ total 12 -rw------- 1 lgs lgs 1675 Apr 9 08:40 id_rsa -rw-r--r-- 1 lgs lgs 400 Apr 9 08:40 id_rsa.pub -rw-r--r-- 1 lgs lgs 2220 Apr 9 08:40 known_hosts
b. 确认在“~/.ssh/”目录下不能放多个 key, 如果确实需要管理多个 key,请按照 SDK发布说明使用 key-chain 管理密钥。
c.确认文件 id_rsa 的权限必须是 600(-rw-------),如果不是,使用如下命令方式修改:
xx@ubuntu:~$ chmod 600 ~/.ssh/id_rsa
d. 确认网络 ping 通并不丢包,使用如下命令方式查看:
xx@ubuntu:~$ ping www.rockchip.com.cn PING www.rockchip.com.cn (58.22.7.114) 56(84) bytes of data. 64 bytes from 58.22.7.114 (58.22.7.114): icmp_seq=1 ttl=243 time=55.1 ms 64 bytes from 58.22.7.114 (58.22.7.114): icmp_seq=2 ttl=243 time=53.3 ms 64 bytes from 58.22.7.114 (58.22.7.114): icmp_seq=3 ttl=243 time=51.9 ms
--- www.rockchip.com.cn ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2003ms rtt min/avg/max/mdev = 51.916/53.465/55.171/1.346 ms
e. 确认 key 是否匹配的:验证 id_rsa.pub 和id_rsa 是否匹配,使用如下方法:
xx@ubuntu:~$ ssh-keygen -y -f id_rsa > id_rsa.pub.tobecompared
6-2 Rockchip SDK 申请及同步指南 6Q&A然后比较id_rsa.pub.tobecompared 与 id_rsa.pub 的内容是否一致(除了后面的邮箱)。如果不一致说明公钥和私钥不是同一个key,这key 有问题。您需要使用申请SDK 权限时,提供给RK 的公钥对应的key 来同步代码。
f.确认 ssh 命令是否连通的:查阅申请的 SDK 发布说明文档里获取 SDK 下载地址:i.如果地址不带端口,若包含了“repo init --repo-url=ssh://git@www.rockchip.com.cn”则使用下面ssh 命令测试:
xx@ubuntu:~$ ssh -vT git@www.rockchip.com.cn
ii.如果地址里带有端口,若包含了“repo init --repo-url=ssh://git@www.rockchip.com.cn:2222”,则使用包含对应端口的ssh 测试命令:
xx@ubuntu:~$ ssh –vT git@www.rockchip.com.cn –p 2222
如下测试命令:
xx@ubuntu:~$ ssh -vT git@www.rockchip.com.cn OpenSSH_7.4p1 Ubuntu-10, OpenSSL 1.0.2g 1 Mar 2016 debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug1: Connecting to www.rockchip.com.cn [58.22.7.114] port 22. debug1: Connection established. ...... Are you sure you want to continue connecting (yes/no)? yes ...... debug1: Remote: Agent forwarding disabled. debug1: Remote: Pty allocation disabled. debug1: Sending environment. debug1: Sending env LANG = en_US.UTF-8 hello lgs, this is git@ubuntu running gitolite3 v3.6.5-1-ged20d02-dt on git 1.9.1 FATAL: 'FOXCONN/AM40/.repo/manifests/' ends with a '/' debug1: client_input_channel_req: channel 0 rtype exit-status reply 0 debug1: channel 0: free: client-session, nchannels 1 Transferred: sent 2760, received 3124 bytes, in 3.3 seconds Bytes per second: sent 846.7, received 958.4 debug1: Exit status 25
执行ssh 命令的时候,如果出现“Are you sure you want to continue connecting (yes/no)?”的提示,请输入“yes”回车。执行测试命令后,如上所示包含有标红的“hello”打印提示,说明ssh 是连通的。如果不通,可能PC(或者服务器)环境有问题,可以换个PC(或者服务器)验证一下。注意虚拟机使用桥接的网络,常会出现ssh 不通的情况。在上述步骤确认完后,请根据SDK 发布说明文档的操作方法,再去同步一次代码。
6-3 Rockchip SDK 申请及同步指南 6Q&A
6.4.2 SDK 同步错误及解决方法
我们跟进客户反馈,总结了如下常见报错和解决方法:a. url 问题:包含红色log 信息,如下:
| ssh: connect to host 10.10.10.211 port 22: Connection timed out | |
|---|---|
| ssh: connect to host 10.10.10.211 port 22: Connection timed out | |
| fatal: Could not read from remote repository. | |
| Please make sure you have the correct access rights | |
| and the repository exists. | |
| 解决方法: |
i.修改.repo/manifests/.git/config 文件,如下:
xx@ubuntu:~$ vi .repo/manifests/.git/config url = ssh://git@www.rockchip.com.cn/repo/rk/platform/manifest
ii.修改.repo/repo/.git/config 文件,如下:
xx @ubuntu:~$ vi.repo/repo/.git/config url = ssh://git@www.rockchip.com.cn/repo/rk/tools/repo
b. 生成 key 时,设置了密码包含红色 Log 信息,如下:
Enter passphrase for key '/home/junyikeji/.ssh/id_rsa':
解决方法有两种:按照发布说明文档使用key-chain 管理或重新设置私钥密码为空:
xx@ubuntu:~$ ssh-keygen -f ~/.ssh/id_rsa –p
c. SDK 权限问题:包含红色 log 信息,如下:
FATAL: R any phoenix/rk3368/box/6.0/rk/platform/manifest shenk DENIED by fallthru
解决方法:申请对应 SDK 权限。
d. git 配置出错:包含红色 log 信息,如下:
Please tell me who you are.
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
6-4 Rockchip SDK 申请及同步指南 6Q&A to set your account's default identity.
解决方法:创建文件 vi ~/.gitconfig,里面内容:
xx@ubuntu:~$ vi ~/.gitconfig [color] ui = true [user] name = xxx(填写您的名称) email = yyy(填写您的邮箱)
e. 同步过程中同步某个 git 仓库报错:包含红色 log 信息,如下:
解决方法:删除对应的子仓库目录,如上图RKTools 目录,再同步看。
xx@ubuntu:$ rm -rf RKTools xx@ubuntu:$ .repo/repo/repo sync
f.语言设置报错:包含红色 log 信息,如下:
projects: 50% (235/469) perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LC_PAPER = "zh_CN.UTF-8",
6-5 Rockchip SDK 申请及同步指南 6Q&A
解决方法:~/.bashrc 文件尾加入
xx@ubuntu:~$ vi ~/.bashrc
export LC_ALL=C
保存后执行
xx@ubuntu:~$ source ~/.bashrc
g. GitError 报错:包含红色 log 信息,如下
GitError: --force-sync not enabled; cannot overwrite a local work tree. If you're comfortable with the possibility of losing the work tree's git metadata, use `repo sync --force-sync frameworks/native` to proceed.
解决方法: 加上后缀 --force-sync。
xx@ubuntu:~$.repo/repo/repo sync –force-sync
h. fetch errors 报错:包含红色 log 信息,如下:
Fetching projects: 99% (477/481) Fetching projectplatform/external/libusb-compat Fetching project platform/external/libseccomp-helper error: Cannot fetch android/rk/u-boot
解决方法:再次同步。
xx@ubuntu:$ rm -rf .repo/projects/u-boot.git xx@ubuntu:$ .repo/repo/repo sync --force-sync
6-6 Rockchip SDK 申请及同步指南 6Q&A您在同步代码时,遇到非上述的问题,请将问题提交到 RK 官方 Bug 系统(https://redmine.rockchip.com.cn/)上,Rockchip 会配合您们一起解决。如果是您们的网络原因,这需自行解决。
6-7