目录
本文首发于电子发烧友:【新提醒】【Milk-V Duo S 开发板免费体验】2 - 安装编译环境并测试Hello world! - RISC-V技术论坛 - 电子技术论坛 - 广受欢迎的专业电子论坛!
感谢电子发烧友和Milk-V提供的评测机会。
引言
前面已经简单介绍了Milk-V DuoS 开发板,今天来安装一下交叉编译开发环境。本地使用的是Windows 中 WSL 安装的 Ubuntu。相关介绍来自官方文档:duo-examples/README-zh.md at main · milkv-duo/duo-examples · GitHub
下载例程代码
使用下面的命令下载官方例程:
git clone https://github.com/milkv-duo/duo-examples.git
配置编译环境
例程下载成功后,运行下面的命令进行环境配置:
cd duo-examples
source envsetup.sh
加载编译环境时需要按提示输入所需编译目标:
Select Product:
1. Duo (CV1800B)
2. Duo256M (SG2002) or DuoS (SG2000)
对于DuoS 则选择 2
。
由于 Duo256M 和 DuoS 支持 RISCV 和 ARM 两种架构,还需要按提示继续选择:
Select Arch:
1. ARM64
2. RISCV64
Which would you like:
我使用的是 RISCV 系统,则选择 2
。
这个脚本会克隆GitHub - milkv-duo/host-tools,不过只有其中的gcc/riscv64-linux-musl-x86_64对我们才有用。
测试Hello world
程序编译
以hello-world
为例,进入该例子目录直接执行 make 即可:
cd hello-world
make
编译成功后将生成的 helloworld
。可以用file命令查看一下:
test@ERAZE-UHYFLAFVU:~/duo-examples/hello-world$ file helloworld
helloworld: ELF 64-bit LSB executable, UCB RISC-V, RVC, double-float ABI, version 1 (SYSV), dynamically linked, interpreter /lib/ld-musl-riscv64v0p7_xthead.so.1, with debug_info, not stripped
我们确实生成了RISC-V 64位的可执行文件。
程序运行
默认固件支持 USB-NCM 网络方式传送到 DuoS 设备中,DuoS 的 IP 为192.168.42.1
,用户名是root
,密码是milkv
。
$ scp helloworld root@192.168.42.1:/root/
发送成功后,在 ssh 或者串口登陆的终端中运行./helloworld
,会打印Hello, World!
[root@milkv]~# ./helloworld
Hello, World!
结论
至此已经配置应用程序环境,duo-example中还包括了一些I/O相关的例程。如果想运行多媒体相关例程,还需要下载其他的SDK。