从此处可以下载到原厂SDK
https://gitee.com/kendryte/k230_sdk
这里有多种下载方式,可以直接从git上面拉取,也可以下载工程压缩包,两者得到的目录内容是一致的。下载到的工程如下

在此目录下执行
make prepare_sourcecode
会下载Linux和RT-Smart toolchain, buildroot package, AI package等
下载成功会有如下提示

执行完这一步之后,才得到完整版本的sdk
然后执行构建,先配置交叉编译器环境
sudo ln -s $(shell realpath toolchain)
/opt/toolchain
因为这个SDK里面所有交叉编译器的路径都是使用/opt/toolchain,考虑到每个人配置的SDK路径不同,因此用软连接的方式比较方便,构建后可以删除此软链接,对原本的系统也没有影响
执行后的效果

然后执行构建,这里可用的构建选项,可以看SDK目录下面configs文件夹里面的defconfig
刚好有01studio的canmv,因此执行
make CONF=k230_canmv_01studio_defconfig
编译期间有这些报错
1、报错
-- Checking for module 'yaml-0.1'
--
No package 'yaml-0.1' found
解决方法
sudo apt-get install libyaml-dev
2、报错
/bin/bash: line 7: scons: command not found
解决方法
sudo apt install scons
3、报错
ModuleNotFoundError: No module named
'gmssl'
解决方法
pip3 install gmssl
4、报错
genimage: error while loading shared
libraries: libconfuse.so.2: cannot open shared object file: No such file or
directory
解决方法
sudo apt install libconfuse-dev
5、编译时候有一个警告

解决方法
将下面三个文件的换行符从\r\n改为\n
src/little/linux/drivers/crypto/canaan/Kconfig
src/little/linux/drivers/crypto/canaan/Makefile
src/little/linux/drivers/net/wireless/rtl8189fs/Kconfig
最终得到编译产物如下

这个sysimage-sdcard.img就是要烧录到tf卡里面的镜像,找个8G的tf卡烧录进去即可。
烧录之后重新上电启动,注意当前用的串口是这两路。串口波特率都是115200

其中靠下方那组是CPU0串口,CPU0运行Linux系统
靠上方那组是CPU1串口,CPU1运行RT Thread系统
启动后Linux系统的打印日志如下

登入用户名是root,无密码
进系统之后,通过命令
cat /proc/cpuinfo 可以看到cpu信息,确实只有一个核心运行Linux

通过命令 cat /proc/meminfo可以看内存信息,大概只有100M左右的内存分配给了Linux

另一个串口信息如下

可以看到vi vo都是给了这个核心,这种分配策略跟之前见过其他家的不同,其他家一般高速接口给Linux,低速接口给RTOS的
到这里,说明公版SDK部署完成。