【平头哥Sipeed LicheeRV 86 Panel测评】5-Tina系统镜像编译测试
<p cid="n0" mdtype="paragraph"><a href="https://bbs.eeworld.com.cn/thread-1193137-1-1.html" target="_blank">上篇文章</a>,编译的hello word程序在板子中不能运行,这篇,我们重新自己编译一个系统镜像,再把自己编译的hello word程序放进去,看看能不能运行。</p><p cid="n45" mdtype="paragraph">自己编译系统镜像,首先需要下载SDK源码。</p>
<h1 cid="n44" mdtype="heading">1 SDK源码下载</h1>
<h2 cid="n47" mdtype="heading">1.1 配置公钥</h2>
<p cid="n2" mdtype="paragraph">全志客户服务平台上添加自己的公钥,用来下载SDK代码</p>
<p cid="n3" mdtype="paragraph"></p>
<p cid="n4" mdtype="paragraph">公钥如何生成呢,我用的是ubuntu系统,输入ssh-keygen可以产生公钥,一路回车使用默认选项,最终的公钥保存在~/.ssh目录下的id_rsa.pub文件中:</p>
<p cid="n5" mdtype="paragraph"></p>
<p cid="n6" mdtype="paragraph">配置好公钥之后,就可以下载D1-H的Tina系统的SDK源码了,点击下载会有如何下载的提示说明:</p>
<p cid="n7" mdtype="paragraph"></p>
<h2 cid="n8" mdtype="heading">git方式下载源码</h2>
<p cid="n49" mdtype="paragraph">在ubunt中创建一个SDK目录,用于存放SDK源码,然后使用git clone指令来下载源码,注意下载地址要改成全志客户服务平台上注册的用户名:</p>
<p cid="n9" mdtype="paragraph"></p>
<p cid="n10" mdtype="paragraph">下载完之后,需要修改repo文件中的用户名为自己在全志客户服务平台上注册的用户名:</p>
<p cid="n11" mdtype="paragraph"></p>
<p cid="n12" mdtype="paragraph">我的改为如下:</p>
<p cid="n13" mdtype="paragraph"></p>
<p cid="n14" mdtype="paragraph">然后将repo文件复制到/usr/bin目录中,并赋予777的权限:</p>
<p cid="n15" mdtype="paragraph"></p>
<p cid="n16" mdtype="paragraph">接下来输入repo init指令来初始化代码仓库</p>
<p cid="n17" mdtype="paragraph"></p>
<p cid="n18" mdtype="paragraph">这里提示了邮箱和用户名没有设置:</p>
<p cid="n19" mdtype="paragraph"></p>
<p cid="n20" mdtype="paragraph">那就来设置一下邮箱和用户名:</p>
<p cid="n21" mdtype="paragraph"></p>
<p cid="n22" mdtype="paragraph">然后再来init一次,注意,init完之后,这个文件夹好像也没有多出来什么文件,然后使用repo sync指令来同步代码:</p>
<p cid="n23" mdtype="paragraph"></p>
<p cid="n24" mdtype="paragraph">代码同步完成之后的结果:</p>
<p cid="n25" mdtype="paragraph"></p>
<p cid="n26" mdtype="paragraph">然后输入如下指令来创建分支:</p>
<pre>
<code>repo start product-smartx-d1-tina-v1.0-release --all</code></pre>
<h1 cid="n28" mdtype="heading">2 编译Tina系统镜像</h1>
<h2 cid="n52" mdtype="heading">2.1 编译环境准备</h2>
<p cid="n29" mdtype="paragraph">接下来就是使用make编译了:</p>
<p cid="n129" mdtype="paragraph">需要先更新环境变量:</p>
<pre>
<code>source build/envsetup.sh
lunch d1_nezha-tina</code></pre>
<p cid="n133" mdtype="paragraph">然后再make编译:</p>
<p cid="n133" mdtype="paragraph">我这里提示awk没有安装:</p>
<p cid="n133" mdtype="paragraph"></p>
<p cid="n31" mdtype="paragraph">那就安装一下awk,注意awk分为好几种,我安装了gawk:</p>
<p cid="n32" mdtype="paragraph"></p>
<h2 cid="n33" mdtype="heading">2.2 编译</h2>
<p cid="n54" mdtype="paragraph">安装完之后,再使用make指令编译:</p>
<p cid="n34" mdtype="paragraph"></p>
<h2 cid="n35" mdtype="heading">2.3 打包</h2>
<p cid="n57" mdtype="paragraph">编译完之后,就可以使用pack指令打包了</p>
<pre>
<code>pack</code></pre>
<p cid="n139" mdtype="paragraph">最终得到img镜像文件:</p>
<p cid="n36" mdtype="paragraph"></p>
<p cid="n37" mdtype="paragraph">进到out/d1-nezha目录中,查看各个编译成果:</p>
<p cid="n38" mdtype="paragraph"></p>
<h1 cid="n39" mdtype="heading">3 镜像烧写测试</h1>
<p cid="n40" mdtype="paragraph">将img镜像烧写到SD卡中,烧写方式参考之前的文章。</p>
<p cid="n41" mdtype="paragraph">这次使用adb方式连接开发板,如下图,注意需要把USB线的插头用小刀削薄一点c</p>
<p cid="n42" mdtype="paragraph"></p>
<p cid="n60" mdtype="paragraph">进入到系统之后,就可以看到Tina Linux的图标:</p>
<p cid="n43" mdtype="paragraph"></p>
<p cid="n62" mdtype="paragraph">本来想新建个文件夹,把hello word程序拷贝进行运行试试,但这里提示这个系统是只读(Read-only)的文件系统。</p>
<p cid="n63" mdtype="paragraph">使用df-T指令查看根文件系统的类型,显示的squashfs类型的文件系统。</p>
<p cid="n65" mdtype="paragraph">hello word程序还是运行不了,还要继续想办法。</p>
<p>不懂,帮顶一下,楼主用心了。重点的地方都画红框了。</p>
<p>如果研究不出来的话,可以直接申请平头哥技术支持</p>
<p>现在可能没戏,不过估计初七都上班了</p>
页:
[1]