这周我们尝试配置一下所需的开发环境,并编译烧录开发板所需的固件。之前的固件也可以从开发环境中自行编译得到。
官方文档是在虚拟机中完成,我个人更加建议在docker中进行,这样可以更加方便的隔离各个项目。
首先安装docker desktop,并在vscode中新建一个ubuntu docker,由于官方教程中使用的是20.04,因此我也是用的focal版本。
创建好docker并且通过vscode连接后,第一步我们先打开terminal,更新一下ubuntu中的软件包
更新完成后,用以下命令来安装所需的依赖:
sudo apt install -y build-essential ninja-build automake autoconf libtool wget curl git gcc libssl-dev bc slib squashfs-tools android-sdk-libsparse-utils android-sdk-ext4-utils jq cmake python3-distutils tclsh scons parallel ssh-client tree python3-dev python3-pip device-tree-compiler libssl-dev ssh cpio squashfs-tools fakeroot libncurses5 flex bison
全部安装好后,下一步是安装cmake。官方文档这里写的有点问题,版本号要求并不是3.16,而是3.16.5.而ubuntu中的默认版本是3.16.2,因此需要卸载重装。
# 注意先删除低版本cmake
sudo apt autoremove cmake
wget https://cmake.org/files/v3.16/cmake-3.16.5.tar.gz
tar zxvf cmake-3.16.5.tar.gz
cd cmake-3.16.5/
./configure
make
sudo make install
下面一步是从github获取源代码:
git clone https://github.com/sophgo/sophpi-huashan.git
但我不知道为什么,这一步总是无法完成,显示错误如下:
我已经排除了网络问题,因此其他的大的github项目都可以成功拉取,唯独这个不行。最后没办法,我手动下载了master的zip包,并传入docker中使用unzip解压缩。
拿到源码后,我们要开始配置编译环境。这里官方文档里漏了一步,首先要线下载并安装Risc-v编译工具链:
cd sophpi-huashan
./download_host-tools.sh
tar -xvf host-tools.tar.gz
完成后再进入sdk文件夹中,配置编译环境,并编译sdk
cd cvi_mmf_sdk
source build/cvisetup.sh
defconfig cv1812h_wevb_0007a_emmc
build_all
当看到如下输出后,说明编译已经成功完成:
编译后的文件都在源码主目录下的install文件夹下,接着我们把对应的文件拷至tf卡,就可以愉快刷机了。
本帖最后由 eew_dy9f48 于 2023-10-4 15:25 编辑