描述
本文来源电子发烧友社区,作者:sumoon_yao, 帖子地址:https://bbs.elecfans.com/jishu_2308943_1_1.html
要想自己编译系统,先要下载源码。根据官方资料介绍,有2种下载源码方法:一种是使用repo+ssh,这种方法需要注册码云公钥,网站上有详细的操作方法,按步骤做就可以了。另一种是使用repo+http。2种方法都进行了尝试,但始终未下载成功,经过不断的摸索,花了大半天时间,结合现有的ubuntu18.04系统环境,最终使用以下命令拉取源码(repo+http方式,repo+ssh方式应该也可以,暂未尝试):
python3 repo sync –c
源码是可以拉取了,但是会出现以下错误提示:
error: RPC failed; curl 56GnuTLS recv error (-9): A TLS packet with unexpected length was received.
fatal: The remote end hung upunexpectedly
fatal: early EOF
fatal: index-pack failed
网上提供的解决方法是:
git config --globalhttp.postBuffer 5000000000
尝试了几次错误提示依旧,不管了,此时已经半夜,最后一次发出拉取命令,关显示器,等第二天早上再来看结果。
第二天上午打开显示器一看,运气还不错,终于下载成功,赶快进行下面的步骤:
python3 repo forall –c ‘git lfs pull’
继续安装编译器及二进制工具:
bash build/prebuilts_download.sh
耐心等待安装完成,编译器和二进制工具安装结束后就可以编译源码啦,在源码根目录下键入以下命令:
./build.sh --product-name rk3568 --ccache
接下来就是漫长的等待,注意如果编译过程中报错,可以查看out/rk3568目录下的build.log文件,根据提示信息做出相应处理,比如我的编译过程中就出现错误提示信息:javac命令找不到,那么只要使用apt命令安装相应的软件包就可以了。
历经10多个小时的等待,最后终于出现了以下提示信息:
Rk3568 build success
=====buildsuccessful===== (这一行为绿色字符)
镜像文件位于out/rk3568/packages/phone/images 目录下:
整个源码、编译工具以及编译过程产生的文件和编译结果等共占用磁盘空间71G左右:
最后一步就是将编译好的镜像烧写到
开发板验证,注意新编译的镜像烧写时要重新配置,如下图所示:
打开APP阅读更多精彩内容