hi,
我的硬件环境为jetson orin,使用JP6.1,
我在x86 PC host上使用qemu将下载好的jetpack deb包安装到rootfs中,
下载方法为 sudo apt install -d nvidia-jetpack
将得到的deb文件拷贝到工程中,使用qemu进行安装
LC_ALL=C PYTHONHASHSEED=0 chroot $L4T_ROOTFS_DIR dpkg -i *.deb
但是安装过程中出現如下報錯信息
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down
dpkg: error processing package pva-allow-2 (--configure):
installed pva-allow-2 package post-installation script subprocess returned error exit status 1
dpkg: dependency problems prevent configuration of nvidia-cupva:
nvidia-cupva depends on pva-allow-2 (= 2.0.0~rc3); however:
Package pva-allow-2 is not configured yet.
dpkg: error processing package nvidia-cupva (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of nvidia-jetpack-runtime:
nvidia-jetpack-runtime depends on nvidia-cupva (= 6.1+b123); however:
Package nvidia-cupva is not configured yet.
dpkg: error processing package nvidia-jetpack-runtime (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of nvidia-jetpack:
nvidia-jetpack depends on nvidia-jetpack-runtime (= 6.1+b123); however:
Package nvidia-jetpack-runtime is not configured yet.
dpkg: error processing package nvidia-jetpack (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of nvidia-jetpack-dev:
nvidia-jetpack-dev depends on nvidia-jetpack-runtime (= 6.1+b123); however:
Package nvidia-jetpack-runtime is not configured yet.
dpkg: error processing package nvidia-jetpack-dev (--configure):
dependency problems - leaving unconfigured
Processing triggers for man-db (2.10.2-1) ...
谢谢
Hi,
想請問是否有嘗試使用mutli arch而不是使用qemu
像是
sudo apt install -d nvidia-jetpack:aarch64
謝謝
hi,您指的是我在orin上下载的deb包有问题吗? 我在orin上执行该命令无法下载deb包,谢谢
mogo@mos:/var/cache/apt/archives$ sudo apt install -d nvidia-jetpack:aarch64
command: apt install -d nvidia-jetpack:aarch64
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package nvidia-jetpack:aarch64
hi,没有试过使用mutli arch,之前在JetPack5上一直使用的是qemu,请问在JetPack6的Linux_for_tegra目录里面在制作镜像的时候也用到mutli arch了吗?
另外,我们这个需求的场景是,想在制作system.img时把jetpack software(cuda、cuddn、tensorrt等)软件包安装到Linux_for_tegra/rootfs/中,之前在JetPack5使用qemu是可行的
可以不用使用multi arch
請問您在chroot
之後可以執行以下命令嗎?
apt update
apt install nvidia-jetpack
謝謝
emm,您可能一直没明白我的意思,您指的是用qemu在线下载安装吗?那这样的话制作镜像会比较慢,我们的方案是下载arm 的deb包,通过dpkg命令安装
對,我們這邊有驗證可在Jetpack6上進行。
了解,想請問您們chroot
前有執行以下command嗎?
sudo mount /sys ./sys -o bind
sudo mount /proc ./proc -o bind
sudo mount /dev ./dev -o bind
謝謝
请问这个mount的作用是? 是把rootfs的sys、proc和dev 挂载到 x86的PC系统的sys、proc和dev下吗?
由於 chroot
並未掛載相關目錄,有可能無法access這些目錄導致錯誤。
若您有所顧慮,可以先驗證 JetPack 6 是否能夠用qemu在线下载安装
謝謝
thanks,请问在安装之后,需要umount吧,否则make system.img会报error
我的umount方法如下
umount ${L4T_ROOTFS_DIR}/sys
umount ${L4T_ROOTFS_DIR}/proc
umount ${L4T_ROOTFS_DIR}/dev
但是在生成镜像的时候出现如下报错信息
root@mogo:/workspace/Linux_for_Tegra# sudo BOARDID=3701 FAB=501 BOARDSKU=0004 BOARDREV=G.0 ./tools/kernel_flash/l4t_initrd_flash.sh --no-flash --network usb0 --massflash 6 jetson-agx-orin-devkit mmcblk0p1
Please install the Secureboot package to use initrd flash for fused board
/workspace/Linux_for_Tegra/tools/kernel_flash/l4t_initrd_flash_internal.sh --no-flash --no-flash --network usb0 --massflash 6 jetson-agx-orin-devkit mmcblk0p1
************************************
* *
* Step 1: Generate flash packages *
* *
************************************
Create folder to store images to flash
Generate image for internal storage devices
Generate images to be flashed
ADDITIONAL_DTB_OVERLAY="" /workspace/Linux_for_Tegra/flash.sh --no-flash --sign jetson-agx-orin-devkit mmcblk0p1
###############################################################################
# L4T BSP Information:
# R36 , REVISION: 4.0
# User release: 0.0
###############################################################################
ECID is
Board ID(3701) version(501) sku(0004) revision(G.0)
Preset RAMCODE is
Chip SKU(00:00:00:D0) ramcode() fuselevel(fuselevel_production) board_FAB(501)
Copy /workspace/Linux_for_Tegra/kernel/dtb/tegra234-p3737-0000+p3701-0004-nv.dtb to /workspace/Linux_for_Tegra/kernel/dtb/tegra234-p3737-0000+p3701-0004-nv.dtb.rec
copying bctfile(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-p3701-0000-sdram-l4t.dts)... done.
copying minratchet_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-ratchet-p3701-0000.dts)... done.
copying device_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-device-p3701-0000.dts)... done.
copying misc_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-misc-p3701-0000.dts)... done.
copying pinmux_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-pinmux-p3701-0000-a04.dtsi)... done.
copying gpioint_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-gpioint-p3701-0000.dts)... done.
copying pmic_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-pmic-p3701-0005.dts)... done.
copying pmc_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-padvoltage-p3701-0000-a04.dtsi)... done.
copying deviceprod_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-cprod-p3701-0000.dts)... done.
copying prod_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-prod-p3701-0000.dts)... done.
copying scr_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb2-bct-scr-p3701-0000.dts)... done.
copying wb0sdram(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-p3701-0000-wb0sdram-l4t.dts)... done.
copying bootrom_config(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb1-bct-reset-p3701-0000.dts)... done.
Existing uphylane_config(/workspace/Linux_for_Tegra/bootloader/tegra234-mb1-bct-uphylane-si.dtsi) reused.
copying dev_params(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-br-bct-p3701-0000.dts)... done.
copying dev_params_b(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-br-bct_b-p3701-0000.dts)... done.
copying mb2bct_cfg(/workspace/Linux_for_Tegra/bootloader/generic/BCT/tegra234-mb2-bct-misc-p3701-0000.dts)... done.
Existing pscfwfile(/workspace/Linux_for_Tegra/bootloader/pscfw_t234_prod.bin) reused.
Existing pscbl1file(/workspace/Linux_for_Tegra/bootloader/psc_bl1_t234_prod.bin) reused.
Existing mtsmcefile(/workspace/Linux_for_Tegra/bootloader/mce_flash_o10_cr_prod.bin) reused.
Existing tscfwfile(/workspace/Linux_for_Tegra/bootloader/tsec_t234.bin) reused.
Existing mb2applet(/workspace/Linux_for_Tegra/bootloader/applet_t234.bin) reused.
Existing bootloader(/workspace/Linux_for_Tegra/bootloader/mb2_t234.bin) reused.
copying initrd(/workspace/Linux_for_Tegra/bootloader/l4t_initrd.img)... done.
bl is uefi
Making Boot image... done.
Not signing of boot.img
Making recovery ramdisk for recovery image...
Re-generating recovery ramdisk for recovery image...
/workspace/Linux_for_Tegra/bootloader/ramdisk_tmp /workspace/Linux_for_Tegra/bootloader /workspace/Linux_for_Tegra
72720 blocks
gzip: /workspace/Linux_for_Tegra/kernel/Image: not in gzip format
_BASE_KERNEL_VERSION=5.15.148-tegra
94256 blocks
Making Recovery image...
copying recdtbfile(/workspace/Linux_for_Tegra/kernel/dtb/tegra234-p3737-0000+p3701-0004-nv.dtb.rec)... done.
dd: failed to open '/dev/zero': No such file or directory
Existing sosfile(/workspace/Linux_for_Tegra/bootloader/mb1_t234_prod.bin) reused.
Existing tegraboot(/workspace/Linux_for_Tegra/bootloader/mb2_t234.bin) reused.
Existing cpu_bootloader(/workspace/Linux_for_Tegra/bootloader/mb2_t234.bin) reused.
Existing mb2blfile(/workspace/Linux_for_Tegra/bootloader/mb2_t234.bin) reused.
Existing xusbfile(/workspace/Linux_for_Tegra/bootloader/xusb_t234_prod.bin) reused.
Existing pvafile(/workspace/Linux_for_Tegra/bootloader/nvpva_020.fw) reused.
Existing dcefile(/workspace/Linux_for_Tegra/bootloader/display-t234-dce.bin) reused.
Existing nvdecfile(/workspace/Linux_for_Tegra/bootloader/nvdec_t234_prod.fw) reused.
Existing psc_rf(/workspace/Linux_for_Tegra/bootloader/psc_rf_t234_prod.bin) reused.
Existing mb2_rf(/workspace/Linux_for_Tegra/bootloader/mb2rf_t234.bin) reused.
Existing mb1file(/workspace/Linux_for_Tegra/bootloader/mb1_t234_prod.bin) reused.
Existing bpffile(/workspace/Linux_for_Tegra/bootloader/bpmp_t234-TE990M-A1_prod.bin) reused.
copying bpfdtbfile(/workspace/Linux_for_Tegra/bootloader/generic/tegra234-bpmp-3701-0004-3737-0000.dtb)... done.
Existing camerafw(/workspace/Linux_for_Tegra/bootloader/camera-rtcpu-t234-rce.img) reused.
Existing apefile(/workspace/Linux_for_Tegra/bootloader/adsp-fw.bin) reused.
Existing spefile(/workspace/Linux_for_Tegra/bootloader/spe_t234.bin) reused.
Existing wb0boot(/workspace/Linux_for_Tegra/bootloader/sc7_t234_prod.bin) reused.
Existing tosfile(/workspace/Linux_for_Tegra/bootloader/tos-optee_t234.img) reused.
Existing eksfile(/workspace/Linux_for_Tegra/bootloader/eks_t234.img) reused.
copying dtbfile(/workspace/Linux_for_Tegra/kernel/dtb/tegra234-p3737-0000+p3701-0004-nv.dtb)... done.
Copying nv_boot_control.conf to rootfs
populating kernel to rootfs... done.
populating initrd to rootfs... done.
populating kernel_tegra234-p3737-0000+p3701-0004-nv.dtb to rootfs... done.
Making system.img...
losetup: cannot find an unused loop device
mapping system.img to loop device failed.
Error: failed to generate images
Cleaning up...
请问如何解决? 谢谢
Hi
對的沒錯
sudo umount ./sys
sudo umount ./proc
sudo umount ./dev
我這邊驗證flash是沒問題。
請您重跑或是重新開機再reflash.
謝謝
非常感谢,我们想用massflash方式生成package,重跑程序不会解决这个问题,但是重新开机应该是可以解决这个问题,但是我们的脚本是编译自动化,如果中途需要重新开机再make massflash package,那这样就太糟糕了,您有其他更好的方法吗?
谢谢
Hi,
如果想要massflash 請問 backup image + massflash 能不能符合您們的目標。
backup image 也可以預先把jetpack software安裝好
謝謝
sorry,backup image不太能满足,请问为啥这种massflash不行而flash可以make system.img 呢?请教一下
不太理解您的意思 可以把您的需求講詳細一點嗎?
請嘗試參考看看以下的 script
install_pkg()
{
pactl_conf="etc/pulse/daemon.conf"
aptlist="etc/apt/sources.list.d/nvidia-l4t-apt-source.list"
nv_disable_dir="/opt/nvidia/l4t-packages"
nv_disable="${nv_disable_dir}/.nv-l4t-disable-boot-fw-update-in-preinstall"
cd $TOPDIR
pushd Linux_for_Tegra/rootfs/
sudo /bin/bash -c "cp -f /usr/bin/qemu-aarch64-static ./usr/bin/"
sudo /bin/bash -c "mount /sys ./sys -o bind"
sudo /bin/bash -c "mount /proc ./proc -o bind"
sudo /bin/bash -c "mount /dev ./dev -o bind"
sudo /bin/bash -c "LC_ALL=C chroot . /sbin/depmod -a -b ./ ${KERNEL_VERSION}"
sudo /bin/bash -c "LC_ALL=C chroot . apt-get update"
sudo /bin/bash -c "LC_ALL=C chroot . mkdir -p ${nv_disable_dir}"
sudo /bin/bash -c "LC_ALL=C chroot . touch ${nv_disable}"
sudo /bin/bash -c "LC_ALL=C chroot . apt install --yes nvidia-jetpack"
sudo /bin/bash -c "LC_ALL=C chroot . rm ${nv_disable}"
sudo /bin/bash -c "umount ./sys"
sudo /bin/bash -c "umount ./proc"
sudo /bin/bash -c "umount ./dev"
sudo /bin/bash -c "rm -f ./usr/bin/qemu-aarch64-static"
popd
}
再重新確認是否會遇到 flash的問題
謝謝
1、我是用的不是apt install,而是是用的dpkg 安装预先下载好的deb;
2、我试过flash.sh是可以的,但是massflash是不行的,您试一下下面的命令,而不是flash.sh,thanks
sudo BOARDID=3701 FAB=501 BOARDSKU=0004 BOARDREV=G.0 ./tools/kernel_flash/l4t_initrd_flash.sh --no-flash --network usb0 --massflash 6 jetson-agx-orin-devkit mmcblk0p1