常见问题
1.如何查看Debian显示用X11还是Wayland?
在X11系统上:
$ echo $XDG_SESSION_TYPE
x11
在Wayland系统上:
$ echo $XDG_SESSION_TYPE
wayland
2.Debian如何增加swap分区
当系统的物理内存不够用的时候,就可以增加Debian的swap虚拟内存分区,以供当前运行的程序使用。比如创建⼀个2G的虚拟内存:
创建⼀个swap⽂件
cd /opt
mkdir swap
dd if=/dev/zero of=swapfile bs=1024 count=2000000 //count代表的是⼤⼩,这⾥是2G
把文件转换为swap文件
sudo mkswap swapfile
激活swap文件
swapon /opt/swapfile
卸载:
swapoff /opt/swapfile
开机启动后自动挂载的话,可以将以下内容添加到/etc/fstab文件中:
/opt/swapfile swap swap defaults 0 0
3.如何创建系统开机自启动程序?
- 将自启动程序放入
/etc/rc.local,开机就会自启动(不能写在exit 0之后);也可以写到/etc/init.d下面的某个文件。 - systemd方法: 在/usr/local/bin创建脚本test.sh:
#!/bin/bash
echo "111" > /dev/ttyFIQ0
赋予脚本可执行权限:
chmod +x test.sh
/lib/systemd/system是系统服务目录,里面文件由发行版的维护者创建
/etc/systemd/system是本地管理员自定义服务配置,不会被/lib/systemd/system服务覆盖
进入/etc/systemd/system添加自己的自启动服务,创建demo.service,添加如下内容
[Unit]
Description=Run a Custom Script at Startup
After=network.target
[Service]
ExecStart=/usr/local/bin/test.sh
[Install]
WantedBy=default.target
使用以下命令重新加载systemd守护进程配置
systemctl daemon-reload
使用以下命令建立符号链接关系
systemctl enable demo.service
启动服务
systemctl start demo.service
如需禁止,执行以下命令
systemctl disable demo.service
4.Debian deb包的解压、修改、重新打包方法
如果很多想在原先deb上修改重新打包,方法如下:
#解压出包中的文件到extract目录下
dpkg -X xxx.deb extract/
#解压出包的控制信息extract/DEBIAN/下:
dpkg -e xxx.deb extract/DEBIAN/
# 修改方件XXX
# 对修改后的内容重新进行打包生成deb包
dpkg-deb -b extract/ .
5. Debian 系统触摸屏如何旋转?
安装xinput:
sudo apt update
sudo apt install xinput
识别触摸屏设备名称: 记录你的 触摸屏设备名称或 ID(比如 "UsbHID SingWon-CTP-V1.18B" 或 id=8)。
linaro@linaro-alip:~$ xinput list list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ UsbHID SingWon-CTP-V1.18B id=8 [slave pointer (2)]
⎜ ↳ SIGMACHIP Usb Mouse id=11 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ headset-keys id=6 [slave keyboard (3)]
↳ rk805 pwrkey id=7 [slave keyboard (3)]
↳ UsbHID SingWon-CTP-V1.18B id=9 [slave keyboard (3)]
↳ Dell Dell USB Entry Keyboard id=10 [slave keyboard (3)]
旋转��触摸输入映射:
| 方向 | Transformation Matrix |
|---|---|
| 正常 | 1 0 0 0 1 0 0 0 1 |
| 左旋90° | 0 -1 1 1 0 0 0 0 1 |
| 右旋90° | 0 1 0 -1 0 1 0 0 1 |
| 翻转180° | -1 0 1 0 -1 1 0 0 1 |
设置触摸旋转命令:
xinput set-prop 8 "Coordinate Transformation Matrix" 0 -1 1 1 0 0 0 0 1
6. Debian/Ubuntu 如何进行OTA升级?
(1)检查系统是否包含userdata分区
在开发板执行ls /userdata查看是否存在,若不存在,需在SDK打开该分区配置:
启用userdata分区
修改SDK中device/rockchip/rk3588/parameter.txt配置文件:
-CMDLINE: mtdparts=rk29xxnand:0x00000800@0x00001800(env),0x00002000@0x00004000(uboot),0x00002000@0x00006000(misc),0x00020000@0x00008000(boot),0x00040000@0x00028000(recovery),0x00010000@0x00068000(backup),-@0x00078000(rootfs:grow)
+CMDLINE: mtdparts=rk29xxnand:0x00002000@0x00004000(uboot),0x00002000@0x00006000(misc),0x00020000@0x00008000(boot),0x00040000@0x00028000(recovery),0x00010000@0x00068000(backup),0x01c00000@0x00078000(rootfs),0x00040000@0x01c78000(oem),-@0x01cb8000(userdata:grow)
修改SDK中tools/linux/Linux_Pack_Firmware/rockdev配置文件:
boot Image/boot.img
recovery Image/recovery.img
rootfs Image/rootfs.img
+userdata Image/userdata.img
如果是Ubuntu文件系统,还需要修改SDK中的fstab文件:
--- a/ubuntu/overlay/etc/fstab
+++ b/ubuntu//overlay/etc/fstab
@@ -9,4 +9,4 @@ sysfs /sys sysfs defaults 0 0
debugfs /sys/kernel/debug debugfs defaults 0 0
pstore /sys/fs/pstore pstore defaults 0 0
#PARTLABEL=oem /oem ext2 defaults 0 2
-#PARTLABEL=userdata /userdata ext2 defaults 0 2
+PARTLABEL=userdata /userdata ext2 defaults 0 2
(2)编译Recovery相关程序
-
external/recovery/:主要生成recovery二进制bin程序,recovery模式下的关键程序。 -
external/rkupdate/:主要生成rkupdate二进制bin程序,解析update.img固件中各个分区数据,并执行对各分区执行升级的关键程序,该程序被recovery二进制bin程序内部调用。 以下为修改以上两个目录中的源码文件之后的编译方法:1. source envsetup.sh2. 选择某一平台的 recovery 配置3. make recovery-dirclean && make recovery4. make rkupdate-dirclean && make rkupdate5. ./build.sh recovery6. ./mkfirmware.sh7. 烧写 recovery.img
(3)升级流程
-
编译各组件
.build.sh //编译uboot、kernel和rootfs.build.sh debian //编译Debian文件系统;如果是ubuntu,执行./build.sh focal或者./build.sh jammy -
打包完整固件
./build.sh updateimg //生成镜像文件:SDK/rockdev/update.img -
查看升级后的
compatible字段cat /proc/devices-tree/compatible
(4)OTA升级包准备
修改tools/linux/Linux_Pack_Firmware/rockdev/package-file文件,根据需要升级的分区来配置。升级包可以只包含部分分区,以减小包大小。
注意事项
- recovery.img在升级包中不会在Recovery模式下升级,以避免掉电时导致分区损坏。此分区将在normal系统下升级。
- misc分区不建议打包进升级包,因为该分区会在升级后被清空。
- 如果升级包存放在userdata分区,确保package-file中未包含userdata.img,以避免文件系统损坏。
(5)示例:仅升级boot.img
修改设备树
编辑设备树kernel/arch/arm64/boot/dts/rockchip/rk3588-neardi-linux-lkd3588-f0.dts:
--- a/kernel/arch/arm64/boot/dts/rockchip/rk3588-neardi-linux-lkd3588-f0.dts
+++ b/kernel/arch/arm64/boot/dts/rockchip/rk3588-neardi-linux-lkd3588-f0.dts
@@ -24,5 +24,5 @@
#include "rk3588-neardi-linux-ld160-ov13855-os04a10-dphy1.dtsi" //dphy1
/ {
model = "Rockchip RK3588 NEARDI LKD3588 Board";
- compatible = "neardi,lkd3588-linux-f04,", "rockchip,rk3588";
+ compatible = "neardi,lkd3588-linux-f05,", "rockchip,rk3588";
};
编译内核
./build.sh kernel
修改rk3588-package-file文件
在tools/linux/Linux_Pack_Firmware/rockdev/rk3588-package-file文件中仅保留boot.img:
--- a/tools/linux/Linux_Pack_Firmware/rockdev/rk3588-package-file
+++ b/tools/linux/Linux_Pack_Firmware/rockdev/rk3588-package-file
@@ -5,14 +5,15 @@ package-file package-file
bootloader Image/MiniLoaderAll.bin
parameter Image/parameter.txt
#trust Image/trust.img
-uboot Image/uboot.img
-misc Image/misc.img
+#uboot Image/uboot.img
+#misc Image/misc.img
#resource Image/resource.img
#kernel Image/kernel.img
boot Image/boot.img
recovery Image/recovery.img
-rootfs Image/rootfs.img
+#rootfs Image/rootfs.img
+#oem Image/oem.img
+#userdata Image/userdata.img
打包升级包
./build.sh updateimg
(6)执行升级
将编译服务器生成的 update.img 复制到设备的 /userdata 目录:
sudo scp neardi@192.168.1.200:~/sdk/rk3588/linux/rk3588-linux/rockdev/update.img /userdata/
执行OTA升级命令:
sudo update ota /userdata/update.img
升级过程中可通过串口调试查看进度:
Checking in progress on 1 disk (24.2% complete)
Checking in progress on 1 disk (25.6% complete)
升级完成后,验证compatible是否更新:
cat /proc/device-tree/compatible
如显示neardi,lkd3588-linux-f05,说明升级成功。
7. Debian软件包重构
Debian第三方软件包修改并重新打包步骤如下:
1. apt-get build-dep <pkg> ##安装编译依赖包
2. apt source <pkg> ##下载<pkg>包的源码
3. 创建git,打补丁
4. dpkg-buildpackage -b -uc -us -d ##重新打包编译
比如:更改Xserver软件包,修改并重新打包deb,方法如下:
注意确认/etc/apt/source.list中deb-src开启,另外更新源apt update
- 安装依赖包
apt-get build-dep xorg-server-source
- 下载Xorg-xserver源码
apt source xorg-server-source
- 创建git,打补丁
$ cd xorg-server_*
$ git init && git add .
$ git commit -s "xxxxx"
- 开始编译打包deb
dpkg-buildpackage -b -uc -us -d
8. Debian docker构建
支持通过PC环境来构建Docker编译相关源码,并打包成deb便于集成到系统中。
具体参考文档<SDK>/docs/cn/Linux/Docker/Rockchip_Developer_Guide_Debian_Docker_CN.pdf
9. Debian分区管理
Debian系统支持开机check\resize\mount rootfs/oem/userdata等分区处理
系统增加resize-all.service相关服务,支持各格式分区的resize功能。
系统服务在/lib/systemd/system/resize-all.service和主要执行文件是/usr/bin/resize-helper和/usr/bin/disk-helper
其中调试log在/var/log/resize-all.log,如下:
root@linaro-alip:~# cat /var/log/resize-all.log
Start resizing all internal mounted partitions
Log saved to /var/log/resize-all.log
[19]: Handling /dev/sda8 /userdata ext4 rw,relatime,stripe=128
[18]: Handling /dev/sda7 /oem ext4 rw,relatime
[0]: Handling /dev/sda6 / ext4 rw,relatime
[19]: Already resized /dev/sda8(ext4)
[18]: Already resized /dev/sda7(ext4)
[0]: Already resized /dev/sda6(ext4)
挂载分区方面,正常kernel cmdine root=PARTUUID=614e0000-0000会被rootfs挂载在根目录,oem/userdata写在/etc/fstab中systemd启动时钟会挂载处理。
root@linaro-alip:/# cat /etc/fstab
/* <file system> <mount point> <type> <options> <dump> <pass> */
proc /proc proc defaults 0 0
devtmpfs /dev devtmpfs defaults 0 0
devpts /dev/pts devpts mode=0620,ptmxmode=0666,gid=5 0 0
tmpfs /dev/shm tmpfs nosuid,nodev,noexec 0 0
sysfs /sys sysfs defaults 0 0
debugfs /sys/kernel/debug debugfs defaults 0 0
pstore /sys/fs/pstore pstore defaults 0 0
PARTLABEL=oem /oem ext4 defaults 0 2
PARTLABEL=userdata /userdata ext4 defaults 0 2
<dump> <pass> */
文件系统:设备名或UUID,也可以是⽹络文件系统(NFS)的路径。
挂载点:文件系统的挂载点,例如 / 或 /mnt/mydrive。
文件系统类型:如 ext4、ntfs、swap 等。
挂载选项:挂载时使用的选项,例如 defaults、ro(只读)、noatime 等。多个选项之间用逗号分隔。
dump:此字段用于 dump 命令,通常设置为 0,表示不需要备份。
pass:此字段用于 fsck 命令,数字表示 fsck 检查的顺序。根文件系统通常是 1,其他文件系统是 2,设置为 0 表示不检查。
10. Debian图形适配方案
目前主要支持X11和Wayland的显示架构,主要使用组合如下:
- X11系统默认适配组合:
xfce4/lxde + xserver + lightdm - WAYLAND系统默认适配组合:
Weston+Wayland或gnome + Wayland + gdm3
11. 显示架构配置方案
- X11/Xserver目前搭配是LXDE/XFCE轻量级桌面环境,桌面管理器使用lightdm
- GNOME作为主流桌面环境,主要与WAYLAND显示服务器协议配合使用,并通过gdm3桌面管理器 进行配置。若要测试WAYLAND相关的演示程序,可以切换至Weston桌面环境,这与SDK中通过 Buildroot或Yocto构建的桌面系统相同。
12. Debian音视频适配方案
先介绍rockchip平台视频编解码大概得流程
vpu_service --> mpp --> GStreamer/rockit --> app
vpu_service: 驱动
mpp: rockchip平台的视频编解码中间件,相关说明参考mpp文档
GStreamer/rockit: 对接app等组件
目前Debian系统上主要用GStreamer来对接app和编解码组件。
编解码功能, 也可以直接通过mpp提供测试接口进行测试 (比如mpi_dec_test\mpi_enc_test...)
mpp源码参考 <SDK>/external/mpp/
测试demo参考: <SDK>/external/mpp/test
具体参考SDK文档Rockchip_Developer_Guide_MPP_CN.pdf
13. 音频Pulseaudio通路适配
默认音频使用pulseaudio,正常只要配置/etc/pulse/default.pa
目前SDK中适配ES8388和RK809两款Codec
具体参考Debian官网Pulseaduio和<SDK>/docs/Common/AUDIO/Rockchip_Developer_Guide_PulseAudio_CN.pdf
14. MPP、VPU适配
默认MPP预编译成deb集成在
/usr/lib/aarch64-linux-gnu/librockchip_mpp.so
/usr/lib/aarch64-linux-gnu/librockchip_mpp.so.0
/usr/lib/aarch64-linux-gnu/librockchip_mpp.so.1
同时确保内核有/dev/mpp_service相关节点
具体参考<SDK>/docs/Linux/Multimedia/Rockchip_Developer_Guide_MPP_CN.pdf
15. rkaiq调试
-
确认rkaiq版本以及相关log
root@linaro-alip:/# cat /var/log/syslog |grep rkaiq...Jun 18 17:37:50 linaro-alip rkaiq: ************************** VERSION INFOS**************************Jun 18 17:37:50 linaro-alip rkaiq: version release date: 2023-10-07Jun 18 17:37:50 linaro-alip rkaiq: AIQ: AIQ v5.0x4.0Jun 18 17:37:50 linaro-alip rkaiq: IQ PARSER: Calibv1.4.8,magicCode:1170944Jun 18 17:37:50 linaro-alip rkaiq: ************************ VERSION INFOS END************************ -
rkaiq服务有没有起来
root@linaro-alip:/# ps aux |grep rkaiqroot 2339 0.0 0.4 163020 8076 ? Sl 17:37 0:00 /usr/bin/rkaiq_3A_serverroot 2340 0.0 0.0 8508 1240 ? S 17:37 0:00 logger -t rkaiqroot 2699 0.0 0.0 6264 604 ttyFIQ0 S+ 17:42 0:00 grep rkaiq -
内核ISP调试debug log
echo 3 > /sys/module/video_rkisp/parameters/debugecho 3 > /sys/module/video_rkcif/parameters/debug -
rkaiq debug log
AE模块log:echo 0x1ff4 > /tmp/.rkaiq_logAWB模块log:echo 0x2ff4 > /tmp/.rkaiq_logAF模块log:echo 0x4ff4 > /tmp/.rkaiq_logHDR模块log:echo 0x20ff3 > /tmp/.rkaiq_logNR模块log:echo 0x40ff4 > /tmp/.rkaiq_logDehaze log:echo 0x2000ff3 > /tmp/.rkaiq_logSharp log:echo 0x80000ff4 > /tmp/.rkaiq_logCAMHW log:echo 0x4000000ff4 > /tmp/.rkaiq_log -
检查设备节点信息
root@linaro-alip:/# grep '' /sys/class/video4linux/video*/name/sys/class/video4linux/video0/name:stream_cif_mipi_id0/sys/class/video4linux/video1/name:stream_cif_mipi_id1/sys/class/video4linux/video2/name:stream_cif_mipi_id2/sys/class/video4linux/video3/name:stream_cif_mipi_id3/sys/class/video4linux/video4/name:rkcif_scale_ch0/sys/class/video4linux/video5/name:rkcif_scale_ch1/sys/class/video4linux/video6/name:rkcif_scale_ch2/sys/class/video4linux/video7/name:rkcif_scale_ch3/sys/class/video4linux/video8/name:rkcif_tools_id0/sys/class/video4linux/video9/name:rkcif_tools_id1/sys/class/video4linux/video10/name:rkcif_tools_id2...
16. Debian电源管理适配方案
(1)电源管理适配
Debian上电源管理比较复杂,不同系统存在多个待机路径,如:我们添加的power-key.sh按键待机(pm-utils或者直接写节点), pm-utils命令待机(执⾏hook脚本后写节点)。 xfce4、mate、gnome等桌面系统的电源管理中自动待机、UI或按键待机,一般是优先systemd,然后consolekit或pm-utils systemd(直接写节点),这边统一优先让systemd默认使用pm-utils来实现待机唤醒的流程。
Debian的overlay/etc/Powermanager 默认有集成相关配置文件
├── 01npu
├── 02npu
├── 03wifibt
├── 04wifibt
├── power-key.conf
├── power-key.sh
├── triggerhappy
└── triggerhappy.service
可查看etc/init.d/rockchip.sh电源管理有一些特别处理。特别是NPU和RKWIFIBT的部分,同时增加电源按键得处理。
# support power management
if [ -e "/usr/sbin/pm-suspend" -a -e /etc/Powermanager ] ;
then
mv /etc/Powermanager/power-key.sh /usr/bin/
mv /etc/Powermanager/power-key.conf /etc/triggerhappy/triggers.d/
if [[ "$CHIPNAME" == "rk3399pro" ]];
then
mv /etc/Powermanager/01npu /usr/lib/pm-utils/sleep.d/
mv /etc/Powermanager/02npu /lib/systemd/system-sleep/
fi
mv /etc/Powermanager/03wifibt /usr/lib/pm-utils/sleep.d/
mv /etc/Powermanager/04wifibt /lib/systemd/system-sleep/
mv /etc/Powermanager/triggerhappy /etc/init.d/triggerhappy
rm /etc/Powermanager -rf
service triggerhappy restart
fi
如果有其他特别模块需要唤醒处理,可以放在以下两个配置目录里
/usr/lib/pm-utils/sleep.d/ 和 /lib/systemd/system-sleep/
待机唤醒测试参考/rockchip-test/suspend_resume/suspend_resume.sh
其他芯片相关休眠唤醒的处理可具体参考<SDK>/docs/cn/Common/TRUST/Rockchip_RK3588_Developer_Guide_System_Suspend_CN.pdf开发文档。
(2)电源管理配置
这边主要介绍xfce4的电源管理配置,主要涉及DPMS和待机休眠相关配置。具体配置说明如下:
#/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml
<channel name="xfce4-power-manager" version="1.0">
<property name="xfce4-power-manager" type="empty">
<!-- Let other power manager(e.g. trigger-happy) handle power key -->
<property name="power-button-action" type="uint" value="0"/>
<!-- Disable DPMS(auto screen-off) by default -->
<property name="dpms-enabled" type="bool" value="false"/>
<property name="blank-on-ac" type="int" value="0"/>
<!-- Disable Screen lock by default -->
<property name="lock-screen-suspend-hibernate" type="bool" value="false"/>
</property>
</channel>
17. Debian固件升级方案
Debian固件升级方式主要如下:
-
USB升级
-
SD卡或U盘启动升级
-
烧录器升级
-
OTA升级
OTA升级分Recovery升级(包括Loader、Parameter、其他分区、客户自定义分区)、A/B分区升级、差分升级 具体参考
<SDK>/docs/cn/Linux/Recovery/Rockchip_Developer_Guide_Linux_Upgrade_CN.pdf
18. 下载"Base Debian"失败问题
- 由于编译 Base Debian 需要访问国外网站,而国内网络访问国外网站时,经常出现下载失败的情况:
Debian 使用live build,镜像源改为国内可以这样配置:
32位系统:
+++ b/ubuntu-build-service/{buster/bullseye}-desktop-armhf/configure
@@ -11,6 +11,11 @@ set -e
echo "I: create configuration"
export LB_BOOTSTRAP_INCLUDE="apt-transport-https gnupg"
lb config \
+ --mirror-bootstrap "http://mirrors.ustc.edu.cn/debian" \
+ --mirror-chroot "http://mirrors.ustc.edu.cn/debian" \
+ --mirror-chroot-security "http://mirrors.ustc.edu.cn/debian-security" \
+ --mirror-binary "http://mirrors.ustc.edu.cn/debian" \
+ --mirror-binary-security "http://mirrors.ustc.edu.cn/debian-security" \--apt-indices false \--apt-recommends false \--apt-secure false \
64位系统:--- a/ubuntu-build-service/{buster/bullseye}-desktop-arm64/configure
+++ b/ubuntu-build-service/{buster/bullseye}-desktop-arm64/configure
@@ -11,6 +11,11 @@ set -e
echo "I: create configuration"
export LB_BOOTSTRAP_INCLUDE="apt-transport-https gnupg"
lb config \
+ --mirror-bootstrap "http://mirrors.ustc.edu.cn/debian" \
+ --mirror-chroot "http://mirrors.ustc.edu.cn/debian" \
+ --mirror-chroot-security "http://mirrors.ustc.edu.cn/debian-security" \
+ --mirror-binary "http://mirrors.ustc.edu.cn/debian" \
+ --mirror-binary-security "http://mirrors.ustc.edu.cn/debian-security" \
--apt-indices false \
--apt-recommends false \
--apt-secure false \
19. 系统如何设置开机启动进入命令行模式
大致方式为:
- 卸载xserer
- kernel开启
CONFIG_FRAMEBUFFER_CONSOLE、CONFIG_DRM_FBDEV_EMULATION、 CONFIG_VT、CONFIG_VT_CONSOLE
20. Debian中编译和移植rkaiq/rkisp仓库的步骤
在Buildroot中rkaiq/rkisp功能调试正常,如何正确移植到Debian中
比如RK3588芯片,可以切换使用地版本的GCC和GLIBC来生成移植到第三方系统。
(1)修改Buildroot配置以支持GCC 8
diff --git a/configs/rockchip/chips/rk3588.config
b/configs/rockchip/chips/rk3588.config
index f806813a6e..affb5e71ad 100644
--- a/configs/rockchip/chips/rk3588.config
+++ b/configs/rockchip/chips/rk3588.config
@@ -1,4 +1,4 @@
-BR2_cortex_a76_a55=y
+BR2_cortex_a72_a53=y
BR2_PACKAGE_RK3588=y
BR2_ROOTFS_OVERLAY+="board/rockchip/rk3588/fs-overlay/"
BR2_TARGET_GENERIC_HOSTNAME="rk3588"
diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index 7556e1ece6..c917823f57 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -17,7 +17,6 @@ config BR2_GCC_VERSION_ARC
config BR2_GCC_VERSION_8_X
bool "gcc 8.x"
- depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_9
# ARC HS48 rel 31 only supported by gcc arc fork.
depends on !BR2_archs4x_rel31
select BR2_TOOLCHAIN_GCC_AT_LEAST_8
(2)设置Buildroot配置,默认使用GCC 8和GLIBC 2.28进行编译。
buildroot#cat configs/rockchip_rk3588_glibc2.28_defconfig
#include "../rockchip_rk3588_defconfig"
BR2_GCC_VERSION_8_X=y
BR2_PACKAGE_GLIBC_2_28=y
(3)使用Buildroot进行相应配置的编译。
设置Buildroot环境,并编译camera-engine-rkaiq模块。
<SDK>#source buildroot/envsetup.sh rockchip_rk3588_glibc2.28
<SDK>## cd buildroot
buildroot# make camera-engine-rkaiq
编译完成后,将生成的文件(例如output/rockchip_rk3588_glibc2.28/build/camera-engine rkaiq-1.0/camera-engine-rkaiq-1.0.tar )移植到Debian系统中。