Собирать можно либо в ubuntu(20.04/22.04) либо в docker.
Скачать buildroot-external-inmys.tar.gz
wget http://buildroot.org/downloads/buildroot-2023.02.1.tar.gz tar -xf buildroot-2023.02.1.tar.gz tar -xf buildroot-external-inmys.tar.gz make BR2_EXTERNAL=$PWD/buildroot-external-inmys -C buildroot-2023.02.1 O=$PWD/output br_defconfig
cd output make # ждём несколько часов
Результат:
output/images/Image output/images/rk3568-inmys-smarc-evm.dtb rootfs.cpio.gz rootfs.ext2.gz
make menuconfig make
make linux-rebuild
make sdk
Результат:
output/images/aarch64-buildroot-linux-gnu_sdk-buildroot.tar.gz
Для выполнения следующей инструкции, на компьютере должно быть установлено Docker окружение
Скачать buildroot-external-inmys.tar.gz
wget http://buildroot.org/downloads/buildroot-2023.02.1.tar.gz tar -xf buildroot-2023.02.1.tar.gz tar -xf buildroot-external-inmys.tar.gz # build docker image with name "buildroot-2023.02.1" docker build -t buildroot-2023.02.1 buildroot-2023.02.1/support/docker # initial config rootfs docker run --mount type=bind,source="$(pwd)",target=/workdir --user "$(id -u):$(id -g)" -it buildroot-2023.02.1 make BR2_EXTERNAL=/workdir/buildroot-external-inmys -C /workdir/buildroot-2023.02.1 O=/workdir/output br_defconfig
cd output docker run --mount type=bind,source="$(pwd)",target=/workdir --user "$(id -u):$(id -g)" -it buildroot-2023.02.1 make -C /workdir/output # ждём несколько часов
Результат:
output/images/Image output/images/rk3568-inmys-smarc-evm.dtb rootfs.cpio.gz rootfs.ext2.gz
docker run --mount type=bind,source="$(pwd)",target=/workdir --user "$(id -u):$(id -g)" -it buildroot-2023.02.1 make -C /workdir/output menuconfig docker run --mount type=bind,source="$(pwd)",target=/workdir --user "$(id -u):$(id -g)" -it buildroot-2023.02.1 make -C /workdir/output
docker run --mount type=bind,source="$(pwd)",target=/workdir --user "$(id -u):$(id -g)" -it buildroot-2023.02.1 make -C /workdir/output linux-rebuild
docker run --mount type=bind,source="$(pwd)",target=/workdir --user "$(id -u):$(id -g)" -it buildroot-2023.02.1 make -C /workdir/output sdk
Результат:
output/images/aarch64-buildroot-linux-gnu_sdk-buildroot.tar.gz
Скачать burn.tar.gz
tar -xf burn.tar.gz
скопировать в burn файлы: Image rk3568-inmys-smarc-evm.dtb rootfs.cpio.gz
sudo ./burn_sd.sh /dev/sdX
ГДЕ ВМЕСТО X БУКВА КАРТЫ ПАМЯТИ
Консольный uart конфигугрируется на скорости 1500000.
Для кросс-компиляции нужен компьютер x86_64(amd64) с установленным linux, подойдут: ubuntu,debian.
tar -xf aarch64-buildroot-linux-gnu_sdk-buildroot.tar.gz cd aarch64-buildroot-linux-gnu_sdk-buildroot/ ./relocate-sdk.sh
Теперь:
о том как настроить qt creator для кросс-компиляции написано здесь (host.tar.gz == aarch64-buildroot-linux-gnu_sdk-buildroot.tar.gz) https://wiki.inmys.ru/doku.php?id=boards:nms-hh-px30:bsp
Уже собранный aarch64-buildroot-linux-gnu_sdk-buildroot.tar.gz : https://disk.yandex.ru/d/P4YAk8zqebVlNg