logo资料库

Rockchip_Debian10_Developer_Guide_CN.pdf

第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
资料共10页,剩余部分请下载后查看
Rockchip Debian10 Developer Guide
前言
目录
1 开发环境搭建
1.1 开发环境选择
1.2 编译工具安装
2 目录结构
3 配置和编译
3.1 默认配置和编译
3.2 新增本地源码包和编译
3.3 修改配置
3.3.1 直接修改
3.3.2 图形化修改
3.3.3保存配置
4常见问题
4.1 提示mkdir权限不够
4.2 public key is not available
Rockchip Debian10 Developer Guide 文件标识:RK-KF-YF-332 发布版本:V1.0.0 日 期:2020-02-06 文件密级:□绝密 □秘密 □内部资料 ■公开 免责声明 本文档按“现状”提供,福州瑞芯微电子股份有限公司(“本公司”,下同)不对本文档的任何陈述、信息 和内容的准确性、可靠性、完整性、适销性、特定目的性和非侵权性提供任何明示或暗示的声明或保 证。本文档仅作为使用指导的参考。 由于产品版本升级或其他原因,本文档将可能在未经任何通知的情况下,不定期进行更新或修改。 商标声明 “Rockchip”、“瑞芯微”、“瑞芯”均为本公司的注册商标,归本公司所有。 本文档可能提及的其他所有注册商标或商标,由其各自拥有者所有。 版权所有 © 2020 福州瑞芯微电子股份有限公司 超越合理使用范畴,非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全 部,并不得以任何形式传播。 福州瑞芯微电子股份有限公司 Fuzhou Rockchip Electronics Co., Ltd. 地址: 福建省福州市铜盘路软件园A区18号 网址: www.rock-chips.com 客户服务电话: +86-4007-700-590 客户服务传真: +86-591-83951833 客户服务邮箱: fae@rock-chips.com
前言 概述 本文档简单介绍了Rockchip Linux SDK中, Debian10 编译、配置、使用、以及开发过程中注意事项。 主要功能 类型 数据通信 应用程序 读者对象 具体功能 Wi-Fi、以太网卡、USB、SDCARD等 桌面、设置、文件管理器、音视频播放等 本文档(本指南)主要适用于以下工程师: 技术支持工程师 软件开发工程师 修订记录 日期 2020-02-06 版本 V1.0.0 作者 Nickey Yang 修改说明 初始版本
目录 Rockchip Debian10 Developer Guide 前言 目录 1 开发环境搭建 1.1 开发环境选择 1.2 编译工具安装 2 目录结构 3 配置和编译 3.1 默认配置和编译 3.2 新增本地源码包和编译 3.3 修改配置 3.3.1 直接修改 3.3.2 图形化修改 3.3.3保存配置 4常见问题 4.1 提示mkdir权限不够 4.2 public key is not available
1 开发环境搭建 1.1 开发环境选择 推荐使用Ubuntu 18.04作为编译主机的操作系统,操作系统安装且配置好网络环境后,可继续如下步骤 完成编译工具的安装。 1.2 编译工具安装 sudo apt-get install repo git-core gitk git-gui gcc-arm-linux-gnueabihf u-boot- tools device-tree-compiler gcc-aarch64-linux-gnu mtools parted libudev-dev libusb-1.0-0-dev python-linaro-image-tools linaro-image-tools autoconf autotools- dev libsigsegv2 m4 intltool libdrm-dev curl sed make binutils build-essential gcc g++ bash patch gzip bzip2 perl tar cpio python unzip rsync file bc wget libncurses5 libqt4-dev libglib2.0-dev libgtk2.0-dev libglade2-dev cvs git mercurial rsync openssh-client subversion asciidoc w3m dblatex graphviz python- matplotlib libc6:i386 libssl-dev texinfo liblz4-tool genext2fs xutils-dev libwayland-bin bison flex cmake 如果编译遇到报错,可以视报错信息,安装对应的软件包。
2 目录结构 . ├── distro │   ├── configs..........................#不同芯片平台的默认配置,用户可以加入客制化的 配置 │   ├── download.........................#编译过程中,从网络上下载的源码包 │   ├── output...........................#编译过程中,输出的文件 │     ├── log...........................#编译、安装、打包过程中产生的log │     ├── build.........................#每个包在编译过程中产生的文件 │     ├── images........................#经过打包、压缩的的根文件系统镜像 │     ├── target........................#完整的根文件系统 │   ├── overlay..........................#overlay目录会覆盖到根文件系统,来满足客制化 的需求 │   ├── package..........................#存放不同包的编译需要的Config.ini和make.sh │   ├── scripts..........................#编译,安装,打包的脚本 │   ├── support..........................#编译某些包而添加的,可以支持下载源码包加上本 地补丁后编译 ├── app...........................#qt应用launcher、camera、setting等的源码 ├── buildroot.....................#buildroot目录 └── external......................#Rockchip提供的libdrm、mpp、rktoolkit等源码 目前编译Debian10上qt app的时候会使用buildroot编出来的qmake。所以如果需要编译Debian10上的qt app请先编译buildroot。
3 配置和编译 3.1 默认配置和编译 下面以RK3288为例,介绍Debian10系统的编译和相关开发。 cd distro make rk3288_defconfig   #defconfig位于configs目录下 执行后会生成最终编译所使用的配置文件,存放在output/.config。 ./make.sh               #自动完成各个包的下载、编译、并打包成文件系统 3.2 新增本地源码包和编译 下面介绍本地的package如何集成到 Debain10中。 package的编译是由distro/make.sh脚本根据.config里 面打开的配置来执行对应package里的make.sh。这里使用rktoolkit作为示例来讲解: 1. 在package/Config.ini里新增rktoolkit package/Config.in        source "package/rkscript/Config.in" +       source "package/rktoolkit/Config.in"        source "package/rkwifibt/Config.in" 2. 新建rktoolkit文件夹,然后在这个文件夹下编写make.sh和Config.in package/rktoolkit/Config.in +config BR2_PACKAGE_RKTOOLKIT +       bool "rktoolkit" +       help +         "io and update tool" package/rktoolkit/make.sh +#!/bin/bash +set -e +$GCC $TOP_DIR/external/rktoolkit/io.c --sysroot=$SYSROOT_DIR - I$SYSROOT_DIR/usr/include -I$SYSROOT_DIR/usr/include/$TOOLCHAIN -o $TARGET_DIR/usr/bin/io +$GCC $TOP_DIR/external/rktoolkit/update.c $TOP_DIR/external/rktoolkit/update_recv/update_recv.c --sysroot=$SYSROOT_DIR -I$SYSROOT_DIR/usr/include -I$SYSROOT_DIR/usr/include/$TOOLCHAIN - I$TOP_DIR/external/rktoolkit/update_recv/ -o $TARGET_DIR/usr/bin/update 3. 单独编译rktoolkit ./make.sh rktoolkit 下面为编译log:
building pkgs: rktoolkit I: Running command: /home/nickey/29/repo_tmp/distro/package/rktoolkit/make.sh ...(省略部分) build rktoolkit done!!! 4. 重新编译rktoolkit ./make.sh rktoolkit-rebuild 或 rm -rf output/build/rktoolkit/ ./make.sh rktoolkit 编译package时,脚本会根据output/build/rktoolkit/ 检测这个package是否已成功编译过。如果已成 功编译过,则不会编译这个包。所以针对rktoolkit包的调试,在源码修改后,可以使用上面的命令 重新编译。 注意事项: 单独包的编译也会安装到output/target目录下,但并不会完成文件系统的打包。需要执行下面的命令 完成文件系统打包。 ./make.sh image 3.3 修改配置 上述的步骤是默认配置,当有客制化的需求时,需要增加或移除一些包,或者修改包的编译配置选项, Debian10支持图形化和直接修改配置的更改方式。 3.3.1 直接修改 在configs/rk3288_defconfig 中直接添加 BR2_PACKAGE_RKTOOLKIT=y 3.3.2 图形化修改 以添加rktoolkit为示例, make menuconfig
输入 /,跳出搜索界面如下,输入 rktoolkit,按回车键: 按 1,选择搜索到的rktoolkit包 输入 空格 勾选这个包
分享到:
收藏