ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

【泰山派RK3566】基于Ubuntu22.04环境下快速上手教程

【泰山派RK3566】基于Ubuntu22.04环境下快速上手教程 最近接触到一款基于泰山派开发板但是官方的开发环境是基于Ubuntu18.04的这个版本太老了甚至无法通过ssh接入最新的IDE所以我要记录一下我在Ubuntu22.04环境下搭建泰山派编译环境的过程。一、Ubuntu环境安装首先当然要安装一个虚拟机下面这个教程是基于Ubuntu18.04的安装教程但是区别不大整体安装流程是一样的只是需要替换Ubuntu的版本和镜像源。【VMwareUbuntu】虚拟机快速安装上手教程二、SDK下载与准备官方下载地址立创·泰山派开发板资料所需sdk路径立创·泰山派开发板资料\第05章.【立创·泰山派】系统SDK\【SDK】Linux-kernel4.9获取下图中的几个文件tspi_linux_sdk_repo_20240131.tar.gz带repo版本的SDKtspi_linux_sdk_repo_20240131_md5sum.txt带repo版本的SDK校验文件buildroot_dl_4c7c9df616fb.tar.gzbuildroot相关库大概率会下载失败所以这里提前下好buildroot_dl_4c7c9df616fb_md5sum.txtbuildroot相关库的校验文件buildroot_dl_4c7c9df616fb_ubuntu22.04.tar.gz针对Ubuntu 22.04重新打包的buildroot相关该文件官方没有是我针对Ubuntu22.04报错重新打包的自己用的话无需重新打包后面我会解释如何修改避免dl库文件编译报错buildroot系统编译这里采用的构建方式是buildroot因为官方也是推荐这种方法所以我们这里也采用这种方式。1、校验文件完整性#使用md5sum获取md5值与对应的xxx_md5sum.txt文档中进行对比保证一致md5sum tspi_linux_sdk_repo_20240131.tar.gz a30f1d0fdb97ca994a82689fa26ba429 tspi_linux_sdk_repo_20240131.tar.gz md5sum buildroot_dl_4c7c9df616fb.tar.gz 3b3b023ef9122f518e1e5dd00fc0fa0a buildroot_dl_4c7c9df616fb.tar.gz2、解压工程文件校验通过之后解压tspi_linux_sdk_repo_20240131.tar.gz建议先建立一个work_place文件夹用来放解压后的文件。然后将sdk解压到里面会得到一个.repo文件夹。(解压过程视设备的性能而定耐心等待)tar-xvzftspi_linux_sdk_repo_20240131.tar.gz3、同步代码解压完成之后需要同步代码依次输入如下指令sudoapt-getupdatesudoapt-getinstallgit-ysudoaptinstallrepo-ysudoapt-getinstallpython2.7sudoapt-getinstallpython3因为我们编译需要指定python2.7所以要设置一下python版本切换#设置 python2.7sudoupdate-alternatives--install/usr/bin/python python /usr/bin/python2.71#设置 python3.10sudoupdate-alternatives--install/usr/bin/python python /usr/bin/python3.102切换到python2.7#选择1即是指定了python2.7版本sudoupdate-alternatives--configpython上述动作成功做完之后就可以开始代码同步了.repo/repo/reposync-l-j8替换buildroot库将之前准备好的库压缩包解压到work_place文件夹中#解压Ubuntu22.04的dl库没有的直接解压官方的buildroot_dl_4c7c9df616fb.tar.gztar-xzfbuildroot_dl_4c7c9df616fb_ubuntu22.04.tar.gz#解压完成以后输入以下指令查看是否替换成功lsbuildroot/dl/接下来安装各类编译所需的工具直接拷贝下面的指令即可部分工具安装需要yes回车确认。sudoapt-getinstallgitsshmakegcc libssl-dev liblz4-toolexpectg patchelf chrpathgawktexinfo chrpath diffstat binfmt-support qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g-multilibunzipdevice-tree-compiler ncurses-dev解决Ubuntu22.04环境下编译问题到这一步基本上就把编译前准备工作都做完了但是实际上直接编译还是会报错的所以需要对报错进行处理。按照下面的操作进行梳理就行。1、dl库文件修改这个库是我我自己修改打包给自己备份的其实内部只做了一个非常简单的修改先在解压好的dl文件夹中找到squashfs-3de1687d7432ea9b302c2db9521996f506c140a3.tar.gz文件并将其解压。然后找到mksquashfs.h文件。需要在这个位置前面加上extern然后将这个文件重新打包并替换掉原来的squashfs-3de1687d7432ea9b302c2db9521996f506c140a3.tar.gz。2、增加python2的软连接由于泰山派的项目强指定python2而Ubuntu22.04刚好没有所以我们需要手动增加一下ln-sf/usr/bin/python2.7 /usr/local/bin/python23、BR2_EXTERNAL_FILE文件找不到的问题修改方法如下图所示在buildroot/Makefile文件中进行修改即可这些问题解决之后就可以正常编译了如果还遇到其他问题欢迎讨论~
返回列表