I checked out the latest buildroot this evening
and ran a build
./build.sh milkv-duos-glibc-arm64-sd
It fails on :
/mnt/buildroot_volume/MilkVDuoS/duo-buildroot-sdk-v2
‘/mnt/buildroot_volume/MilkVDuoS/duo-buildroot-sdk-v2/tdl_sdk/install/lib/libcvi_tdl.so’ → ‘/mnt/buildroot_volume/MilkVDuoS/duo-buildroot-sdk-v2/install/soc_sg2000_milkv_duos_glibc_arm64_sd/rootfs/mnt/system/lib/libcvi_tdl.so’
Run build_pqtool_server() function
[aarch64-linux-gnu-g++] cvi_streamer.o
[aarch64-linux-gnu-g++] main.o
[aarch64-linux-gnu-gcc] stream_porting.o
/mnt/buildroot_volume/MilkVDuoS/duo-buildroot-sdk-v2/cvi_mpi/lib/libcvi_audio.so: undefined reference to pcm_read' /mnt/buildroot_volume/MilkVDuoS/duo-buildroot-sdk-v2/cvi_mpi/lib/libcvi_audio.so: undefined reference to
pcm_open’
/mnt/buildroot_volume/MilkVDuoS/duo-buildroot-sdk-v2/cvi_mpi/lib/libcvi_audio.so: undefined reference to pcm_close' /mnt/buildroot_volume/MilkVDuoS/duo-buildroot-sdk-v2/cvi_mpi/lib/libcvi_audio.so: undefined reference to
pcm_write’
/mnt/buildroot_volume/MilkVDuoS/duo-buildroot-sdk-v2/cvi_mpi/lib/libcvi_audio.so: undefined reference to `pcm_get_error’
collect2: error: ld returned 1 exit status
make: *** [Makefile:103: isp_tool_daemon] Error 1
Error: Build board milkv-duos-glibc-arm64-sd failed!
Turning on alsa-lib does not solve the issue.
I had updated from git this evening, prior to that everything built without issue.
1 Like
It can be a hard to compile without the host being configured correctly, and even then it’s problematic.
Use Docker, such as GitHub - CrocNet/duo-docker-builder: Build Milk-V Duo Ubuntu images ARM64 & RISC-V
1 Like
Thank you, that fixed my build issue, but I cannot boot the resulting image. I keep getting:
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.BS/SD.PS.SD/0x0/0x1000/0x1000/0.PE.BS.SD/0x1000/0xc400/0xc400/0.BE.J. E:RESET:plat/mars/platform.c:114
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.BS/SD.PS.SD/0x0/0x1000/0x1000/0.PE.BS.SD/0x1000/0xc400/0xc400/0.BE.J. E:RESET:plat/mars/platform.c:114
WD.C.SCS/0/0.WD.URPL.SDI/25000000/6000000.BS/SD.PS.SD/0x0/0x1000/0x1000/0.PE.BS.SD/0x1000/0xc400/0xc400/0.BE.J. E:RESET:plat/mars/platform.c:114
Inspecting the card it seems fine, a boot sector with boot.sd and flip.bin and a val rootfs as well.
Inspecting with file I get:
file out/milkv-duos-glibc-arm64-sd_2025-0424-2014.img
out/milkv-duos-glibc-arm64-sd_2025-0312-2001.img: DOS/MBR boot sector; partition 1 : ID=0xc, active, start-CHS (0x0,0,2), end-CHS (0x10,81,2), startsector 1, 262144 sectors; partition 3 : ID=0x83, start-CHS (0x10,146,4), end-CHS (0x72,122,9), startsector 266241, 1572864 sectors
The SD seems fine. If I clone a previous working image on to the card it boots fine, just fails to boot after flashing with this image.
1 Like
You have built for ARM. At the risk of asking the obvious, have you switched the DuoS into ARM mode?
1 Like
Yes, I have built for arm from the start. Switch is set for Arm.
1 Like
For reference,this issue is being tracked here:
opened 10:26AM - 28 Jun 24 UTC
[aarch64-linux-gnu-gcc] lt9611.o
[LINK][aarch64-linux-gnu-gcc] lt9611
make[3]:… Leaving directory '/home/liushijiao/duo-buildroot-sdk-v2/middleware/v2/sample/mipi_tx/lt9611'
make[2]: Leaving directory '/home/liushijiao/duo-buildroot-sdk-v2/middleware/v2/sample/mipi_tx'
make[2]: Entering directory '/home/liushijiao/duo-buildroot-sdk-v2/middleware/v2/sample/vdec'
[aarch64-linux-gnu-gcc] sample_vdec.o
[aarch64-linux-gnu-gcc] sample_venc_lib.o
[aarch64-linux-gnu-gcc] sample_venc_testcase.o
[aarch64-linux-gnu-gcc] sample_vdec_lib.o
[aarch64-linux-gnu-gcc] sample_vdec_testcase.o
[LINK][aarch64-linux-gnu-g++] sample_vdec
/home/liushijiao/duo-buildroot-sdk-v2/middleware/v2/lib/libcvi_audio.so: undefined reference to `pcm_read'
/home/liushijiao/duo-buildroot-sdk-v2/middleware/v2/lib/libcvi_audio.so: undefined reference to `pcm_open'
/home/liushijiao/duo-buildroot-sdk-v2/middleware/v2/lib/libcvi_audio.so: undefined reference to `pcm_close'
/home/liushijiao/duo-buildroot-sdk-v2/middleware/v2/lib/libcvi_audio.so: undefined reference to `pcm_write'
/home/liushijiao/duo-buildroot-sdk-v2/middleware/v2/lib/libcvi_audio.so: undefined reference to `pcm_get_error'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:69: sample_vdec_asan] Error 1
make[2]: Leaving directory '/home/liushijiao/duo-buildroot-sdk-v2/middleware/v2/sample/vdec'
make[1]: *** [Makefile:9: all] Error 1
make[1]: Leaving directory '/home/liushijiao/duo-buildroot-sdk-v2/middleware/v2/sample'
mv: cannot stat 'mod_tmp': No such file or directory
make: *** [Makefile:54: sample] Error 1
build middleware failed !!
~/duo-buildroot-sdk-v2/build
Error: Build board milkv-duos-glibc-arm64-sd failed!