• sales

    +86-0755-88291180

Milk-V Duo linux Compile kernel Tutorial

[] Preparatory work


Local environment windows11 64 bit


Compilation environment: VMware Ubuntu 22.04.4.2 LTS

(If you don't have Ubuntu installed, you need to install one locally or in a virtual machine.)


Prepare an SD card

milk-v duo


[] Installation:

sudo apt-get update


sudo apt install dialog python3-dev make git bc gcc flex bison ninja-build libssl-dev rsync pkg-config device-tree-compiler squashfs-tools parted dosfstools


Installation cmake


sudo apt-get install cmake


Create a development environment directory:

mkdir duo && cd duo


[] Download the development package cvi_mmf_sdk.zip:

wget -c https://link.zhihu.com/?target=https%3A//codeload.github.com/sophgo/cvi_mmf_sdk/zip/refs/heads/v4.1.0 -O cvi_mmf_sdk.zip


Then decompress:

unzip cvi_mmf_sdk.zip

mv cvi_mmf_sdk-4.1.0/ cvi_mmf_sdk/


[] Download tool chain:

wget https://link.zhihu.com/?target=https%3A//sophon-file.sophon.cn/sophon-prod-s3/drive/23/03/07/16/host-tools.tar.gz


Then decompress:

tar xvf host-tools.tar.gz

Move to the development package:

mv host-tools/ cvi_mmf_sdk/


[] Start compiling in a single step as follows:

cd cvi_mmf_sdk/

source build/cvisetup.sh

defconfig cv1800b_sophpi_duo_sd

clean_all

build_all

pack_sd_image


Note: If you are prompted that libssl.so.1.1 is missing during compilation, install it as follows.

wget

http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1-1ubuntu2.1~18.04.23_amd64.deb

(If the link fails, you can download it yourself here http://security.ubuntu.com/ubuntu/pool/main/o/openssl/)


sudo dpkg -i libssl1.1_1.1.1-1ubuntu2.1_18.04.21_amd64.deb


After the final compilation is completed, an install folder will be generated under the folder.


install/soc_cv1800b_sophpi_duo_sd The folder directory is as follows:



[] Write system to SD card:


cd install/soc_cv1800b_sophpi_duo_sd/


You can find the *.img file. SD card and insert it into the computer.


Write image to SD card using command line.

sudo dd if=./sophpi-duo-*.img of=/dev/sdx bs=32M status=progress oflag=direct

("sophpi-duo-*.img" and "sdx" Change it to your name.)


Or copy the *.img file. Use the software to directly burn the image to the SD card, refer to Milk-V Duo Image writing


[] Start the system:


The SD card is plugged into the board, connected to the board's serial port 0 by TTL serial port (no power supply is needed), and then the serial port is opened on the computer with serial debugging tools, and the board is connected to the computer with TYPEC cable, and the system can be entered after a while.



Note that RNDIS protocol is not added to this version of the system kernel, so the DUO development board cannot be recognized in the device manager after it is plugged into USB!

TAG: PC Secondary Screen UART To Ethernet Mechanical Keyboard Jetson Orin NX Case E-Paper Font Tutorial EG25-G Mini PCIe SIMCom Original 4G LTE Cat-4 Module Global Coverage GNSS PCI Express Mini Card ESP32 ST7789 configuration Raspberry Pi PICO Raspberry Pi Prism 3key Keyboard ESP32-S3 GC9A01A JSON Command Meaning ESP32 C6 Development Board 1.47 inch LCD Touch Screen 1.47inch Display 172×320SD AXS5106L JD9853 Raspberry Pi Pico RP2040 1.69 inch TouchScreen Round LCD Display With QMI8658/Buzzer/RTC For Arduino Pi5 Raspberry Pi Pico 2 RP2350 4inch LCD CAN RS485 QMI8658 Development Board 480x480 TouchScreen Display LVGL HMI I2C Sensor JETSON NANO MINI ESP32-C3 1.47 inch LCD Display Development Board 1.47inch Screen SD 172×320 ESP32 S3 Development Board 2.41 inch AMOLED Display 600x450 TouchScreen For Arduino LVGL With SD-Port/ QMI8658C 6-Axis Sensor MiniPCIe Interface 2 CH CAN Card USB CAN Multiple Protection Circuits For Linux/Windows