Firefly开源社区

标题: 按WIKI关于操作出错后,求帮助 [打印本页]

作者: 笨企鹅    时间: 2021-10-28 09:33
标题: 按WIKI关于操作出错后,求帮助
求各位大佬:如何解决按https://wiki.t-firefly.com/zh_CN ... ux_compile_gpt.html中操作,遇到错误提示:
Add file: ./Image/rootfs.img
Error:<AddFile> open file failed,err=2!
------ FAILED ------
Press any key to quit:
ERROR: Running build_updateimg failed!
ERROR: exit code 1 from line 1257:
    ./mkupdate.sh
rk@rk-VirtualBox:~/porj/rk356x_linux_release_20210511$ ./build.sh
作者: 笨企鹅    时间: 2021-10-28 09:36
本帖最后由 笨企鹅 于 2021-10-28 09:54 编辑

操作日志

rk@rk-VirtualBox:~/porj/rk356x_linux_release_20210511$ ./build.sh
处理选项:allff
========================== =================
TARGET_ARCH = arm64
TARGET_PLATFORM = rk356x
TARGET_UBOOT_CONFIG =萤-rk3568
TARGET_SPL_CONFIG =
TARGET_KERNEL_CONFIG = firefly_linux_defconfig
TARGET_KERNEL_DTS = rk3568-萤火虫-ROC-PC
TARGET_TOOLCHAIN_CONFIG =
TARGET_BUILDROOT_CONFIG =
TARGET_RECOVERY_CONFIG =
TARGET_PCBA_CONFIG =
TARGET_RAMBOOT_CONFIG =
============================================
==== ========开始构建uboot============
TARGET_UBOOT_CONFIG=firefly-rk3568
====================== ====================
## make firefly-rk3568_defconfig -j8
#
# 配置写入.config
#
/home/rk/porj/rk356x_linux_release_20210511/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x866_64 /bin/aarch64-linux-gnu-gcc
scripts/kconfig/conf --silentoldconfig Kconfig
  CHK include/config.h
  CFG u-boot.cfg
  GEN include/autoconf.mk.dep
  CFG tpl/u-boot.cfg
  CFG spl/ u-boot.cfg
  GEN tpl/include/autoconf.mk
  GEN spl/include/autoconf.mk
  GEN include/autoconf.mk
  CHK include/config/uboot.release
  CHK include/generated/timestamp_autogenerated.h
  UPD include/generated/timestamp_autogenerated。 H
  CHK include/config.h
  CFG u-boot.cfg
  CHK include/generated/version_autogenerated.h
  CHK include/generated/generic-asm-offsets.h
  CHK include/generated/asm-
  offsets.h HOSTCC 工具/mkenvimage.o
  HOSTCC 工具/image-host.o
  HOSTCC 工具
  /fit_image.o HOSTCC 工具/dumpimage.o
  HOSTCC 工具/mkimage.o
  HOSTCC 工具/rockchip/boot_merger.o
  HOSTCC 工具/rockchip/loaderimage.o
  HOSTLD 工具/mkenvimage
  HOSTLD 工具/loaderimage
  HOSTLD 工具/dumpimage
  HOSTLD tools/mkimage
  HOSTLD tools/boot_merger
  CC arch/arm/cpu/armv8/fwcall.o
  LD arch/arm/cpu/armv8/built-in.o
  CC cmd/version.o
  CC common/main.o
  LD cmd/built-in.o
  LD common/built-in.o
  CC 驱动程序/usb/gadget/f_fastboot.o
  CC lib/display_options.o
  LD lib/built-in .o
  LD 驱动程序  /usb/gadget/built-in.o
  LD u-boot
OBJCOPY u-boot.srec
  OBJCOPY u-boot-nodtb.bin
  SYM u-boot.sym
开始=$(/home/rk/porj/rk356x_linux_release_20210511/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu启动 | grep __rel_dyn_start | cut -f 1 -d ' '); end=$(/home/rk/porj/rk356x_linux_release_20210511/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu boot | grep __rel_dyn_end | cut -f 1 -d ' '); tools/relocate-rela u-boot-nodtb.bin 0x00a00000 $start $end
make[2]: 'arch/arm/dts/rk3568-firefly.dtb' 是最新的。
  复制 u-boot.dtb
  MKIMAGE u-boot-dtb.img
  CAT u-boot-dtb.bin
  MKIMAGE u-boot.img
  复制 u-boot.bin对齐
  u-boot.bin
  CC spl/common/spl/spl.o
  CC tpl/arch/arm/mach-rockchip/tpl.
  CC spl/arch/arm/cpu/armv8/fwcall.o
  CC tpl/arch/arm/cpu/armv8/fwcall.o
  LD spl/arch/arm/cpu/armv8/built-in.o
  LD tpl/arch/arm /cpu/armv8/built-in.o
  LD tpl/arch/arm/mach-rockchip/built-in.o
  LD spl/common/spl/built-in.o
  COPY spl/u-boot-spl.dtb
  CC spl /lib/display_options.o
  LD tpl/u-boot-tpl
  OBJCOPY tpl/u-boot-tpl-nodtb.bin
  COPY tpl/u-boot-tpl.bin
  LD spl/lib/built-in.o
  LD spl/u
  -boot -spl OBJCOPY spl/u-boot-spl-nodtb.bin
  CAT spl/u-boot-spl-dtb.bin
  COPY spl/u-boot-spl.bin
  CFGCHK u-boot.cfg
/home/rk/porj/rk356x_linux_release_20210511/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
SEC = 1
包U- boot.itb 好吧!输入:/home/rk/porj/rk356x_linux_release_20210511/rkbin/RKTRUST/RK3568TRUST.ini

FIT 描述:FIT Image with ATF/OP-TEE/U-Boot
Created: Thu Oct 28 08:59:36 2021   Description
Image 0 (uboot)
:U-Boot的(64位)
  创建于:周四10月28日8时59分36秒2021
  类型:独立程序
  压缩:未压缩
  数据大小:1188472个字节= 1160.62昆明植物研究所= 1.13 MIB
  架构:AArch64
  加载地址:0x00a00000
  入口点:不可用
  哈希算法:sha256
  哈希值:e49a9c27df021987a88a4adba849aec2899e92bd562a870bc9d11577db4b8436
图像1(ATF-1)
  描述:ARM可信固件
  创建:星期四10月28日8点59分36秒2021
  类型:固件
  压缩:未压缩的
  数据大小:155648个字节= 152.00 KIB = 0.15 MIB
  架构:AArch64
  加载地址: 0x00040000
  散列算法中:SHA256
  散列值:796d978c0a3ed60e81d33754e85d52a4e95f77496f7714b9248ff69c30fb1138
图像2(ATF-2)
  描述:ARM可信固件
  创建:星期四10月28日8点59分36秒2021
  类型:固件
  压缩:未压缩的
  数据大小:19019个字节= 18.57 KIB = 0.02 MIB
  架构:AArch64
  加载地址:0x00068000
  散列算法中:SHA256
  散列值:61f58405c635136602ba390ea42a8cef1fbe9b5ae4ab18e62822abc07cac0dd7
图像3(ATF-3)
  描述:ARM可信固件
  创建:星期四10月28日8时59分36秒2021
  类型:固件
  压缩:未压缩的
  数据大小:8192字节= 8.00 KIB = 0.01 MIB
  架构:AArch64
  加载地址:0xfdcd0000
  散列算法中:SHA256
  散列值:87af14e1bdba1c22a83681f00b222238aa8c3e55c0a05ba1b9977f0fda1d26ac
图像4(ATF-4)
  描述:ARM可信固件
  创建:星期四10月28日八时59分36秒2021
  类型:固件
  压缩:未压缩的
  数据大小:8192字节= 8.00 KIB = 0.01 MIB
  架构:AArch64
  加载地址:0xfdcc9000
  散列算法中:SHA256
  散列值:4a24fbbebc39d312f2dd64c9d266ec74c802ae8da794d8bd77af0a9f0178d0fc
图像5(ATF-5)
  描述:ARM可信固件
  创建:星期四10月28日8时59分: 36 2021
  类型:固件
  压缩:未压缩的
  数据大小:7668个字节= 7.49 KIB = 0.01 MIB
  架构:AArch64
  加载地址:0x00066000
  散列算法中:SHA256
  散列值:315a4195a9f6536f971c695a79fcab4870363fc7fc97f355bd091d8d7092261a
图像6(optee)
  描述:OP-TEE
  创建:星期四10月28日8点59分36秒2021
  类型:固件
  压缩:未压缩的
  数据大小:453056字节= 442.44 KIB = 0.43 MIB
  架构:AArch64
  加载地址:0x08400000
  散列算法中:SHA256
  散列值:5a22c90dfc99feef08d4ce66236d36ffde04e9d0c3c275d934a63f1c32aa45c3
图像7(FDT)
  描述: U-Boot dtb
  创建时间:2021 年 10 月 28 日星期四 08:59:36
  类型:扁平设备树
  压缩:未压缩
  数据大小:15115 字节 = 14.76 KiB = 0.01 MiB
  架构:AArch64
  哈希算法:sha256
  哈希值:38792300000000000000000000000000000000000000000000000000
默认配置:'conf'
配置 0 (conf)
  说明:rk3568-firefly
  内核:不可用
  固件:atf-1
  FDT:fdt
  Loadables:uboot
                atf-2
                atf-3
                atf-4
                atf-5
                optee
/home/rk/porj/ rk356x_linux_release_20210511/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
gcc.pack.10loader.x10.10.10.10.10.1pl0loader ok.( )
打包装载机(SPL) 好的!输入:/home/rk/porj/rk356x_linux_release_20210511/rkbin/RKBOOT/RK3568MINIALL.ini

/home/rk/porj/rk356x_linux_release_20210511/u-boot
使用新的打包加载器:spl/u-boot-spl.bin

Image(no-signed, version=0): uboot.img (FIT with uboot, trust...) is ready
Image(no-signed): rk356x_spl_loader_v1.10.111 .bin (with spl, ddr, usbplug) 准备好
打包 uboot.img 好了!输入:/home/rk/porj/rk356x_linux_release_20210511/rkbin/RKTRUST/RK3568TRUST.ini

平台 RK3568 构建正常,使用新的 .config(make firefly-rk3568_defconfig -j8)
Thu Oct 28 08:59
/ rk32 CSThome /porj/rk356x_linux_release_20210511/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
图像类型:Rockchip/Rockchip/Rockchip启动映像
初始化数据大小:59392 字节
启动数据大小:229376 字节
输入:
    /home/rk/porj/rk356x_linux_release_20210511/rkbin/RKBOOT/RK3568MINIALL.ini
    /home/rk/porj/rk356x_linux_release_20210511/rkbin/bin/rk35/rk3568_ddr_1560MHz_v1.10.bin
    /家庭/ RK / porj / rk356x_linux_release_20210511 / rkbin /斌/ RK35 /rk356x_spl_v1.11.bin

打包 rk3568 idblock.bin 好了!

运行 build_uboot 成功。
跳过 build_loader 缺少配置:RK_LOADER_BUILD_TARGET。
============开始构建内核============
TARGET_ARCH =arm64
TARGET_KERNEL_CONFIG =firefly_linux_defconfig
TARGET_KERNEL_DTS =rk3568-firefly-roc-pc
TARGET_KERNEL_CONFIG_FRAGMENT =
====== ====================================
/home/rk/porj/rk356x_linux_release_20210511
#
# 配置写入.config
#
scripts/kconfig/conf --syncconfig Kconfig
  CALL scripts/checksyscalls.sh
  CHK include/generated/compile.h
  GZIP kernel/
  config_data.gz Image: kernel.img is ready
  CALL scripts/checksyscalls.sh
  Building模块,第 2 阶段。找到 MODPOST
  2 个模块
./arch/arm64/boot/dts/rockchip/.rk3568-firefly-roc-pc.dtb.dts.tmp
找到 ./arch/arm64/boot/dts/rockchip/.rk3568 -firefly-roc-pc.dtb.dts.tmp
找到 ./arch/arm64/boot/dts/rockchip/.rk3568-firefly-roc-pc.dtb.dts.tmp
找到 ./arch/arm64/boot/dts/找到rockchip/.rk3568-firefly-roc-pc.dtb.dts.tmp
./arch/arm64/boot/dts/rockchip/.rk3568-firefly-roc-pc.dtb.dts.tmp
找到 ./arch/arm64/boot/dts/rockchip/.rk3568-firefly-roc-pc.dtb.dts.tmp
找到 ./arch/arm64/boot/dts/rockchip/.rk3568-firefly-roc-pc.dtb .dts.tmp
  Image: resource.img (with rk3568-firefly-roc-pc.dtb logo.bmp logo_kernel.bmp) is ready
  Image: boot.img (with Image ramdisk.img resource.img) is ready
  Image: zboot. img(带有 Image.lz4 ramdisk.img resource.img)已准备就绪
fdt {
kernel {
ramdisk {
resource {
FIT 描述:用于 arm
创建的U-Boot FIT 源文件:Thu Oct 28 08:59:55 2021
Image 0 (fdt)
  描述:不可用
  创建时间:2021 年 10 月 28 日星期四 08:59:55
  类型:扁平设备树
  压缩:未压缩
  数据大小:127393字节= 124.41 KIB = 0.12 MIB
  架构:AArch64
  加载地址:0xffffff00
  散列算法中:SHA256
  散列值:70aebe88bacffa23579d62eb7a48086def9ae9b8273d402b3b54d1be1dcf3105
图像1(内核)
  描述:不可用
  创建:星期四10月28日8点59分55秒2021
  类型:内核映像
  压缩:未压缩的
  数据大小:23980040字节= 23418.01 KIB = 22.87 MIB
  架构:AArch64
  操作系统:Linux
  加载地址:0xffffff01
  入口点:0xffffff01
  哈希算法中:SHA256
  散列值:c2ad210182c647804b3cfb121be849d065c5b313e70d75d52e452391fe24e1da
图像2(虚拟盘)
  描述:不可用
  创建时间:2021 年 10 月 28 日星期四 08:59:55
  类型:RAMDisk 图像
  压缩:未压缩
  数据大小:8862525 字节 = 8654.81 KiB = 8.45 MiB
  架构:AArch64
  操作系统:Linux
  加载地址:0xffffff02
  入口点:不可用
  sha5go2
  哈希值:28934197ec84a1ce4fd08dc77fccc8e2f25cbb4afbe43b13861217121f46f62c
图像3(资源)
  描述:不可用
  创建:星期四10月28日八时59分55秒2021
  类型:多文件图像
  压缩:未压缩的
  数据大小:385536字节= 376.50 KIB = 0.37 MIB
  散列算法中:SHA256
  哈希值:76d3c81294b28ed84a0a600f32b5b7d32c15186b32e35250f2796801e1a3002e
默认配置: 'CONF'
配置0(CONF)
  说明:不可用
  内核:内核
  初始化Ramdisk的:RAMDISK
  FDT:FDT
运行build_kernel成功。
跳过 build_toolchain 缺少配置:RK_CFG_TOOLCHAIN。
跳过 build_buildroot 缺少配置:RK_CFG_BUILDROOT。
buildroot/output//images/rootfs.ext4 未生成?
运行 build_rootfs 成功。
==========开始构建恢复==========
TARGET_RECOVERY_CONFIG=
======================== ==============
配置
使用预构建的 rk356x-recovery-arm64.cpio.gz 用于 CPIO 镜像
找到内核映像
包 recovery.img...fdt {
内核 {
ramdisk {
资源 {
FIT 描述:用于 arm 的 U-Boot FIT 源文件
创建时间:2021 年 1 月 28 日星期四 08:59:56
图像 0 (fdt)
  描述:不可用
  创建:周四10月28日8点59分56秒2021
  类型:平设备树
  压缩:未压缩的
  数据大小:127393个字节= 124.41 KIB = 0.12 MIB
  架构:AArch64
  加载地址:0xffffff00
  散列算法中:SHA256
  散列值:70aebe88bacffa23579d62eb7a48086def9ae9b8273d402b3b54d1be1dcf3105
图像1(内核)
  描述:不可用
  创建时间:2021 年 10 月 28 日星期四 08:59:56
  类型:内核图像
  压缩:未压缩的
  数据大小:23980040字节= 23418.01 KIB = 22.87 MIB
  架构:AArch64
  操作系统:Linux
  加载地址:0xffffff01
  入口点:0xffffff01
  哈希算法中:SHA256
  散列值:c2ad210182c647804b3cfb121be849d065c5b313e70d75d52e452391fe24e1da
图像2(虚拟盘)
  描述:不可用
  创建: 2021 年 10 月 28 日星期四 08:59:56
  类型:RAMDisk 映像
  压缩:未压缩
  数据大小:7928951 字节 = 7743.12 KiB = 7.56 MiB
  架构:AArch64
  操作系统:Linux
  加载地址:0xffffff02
  入口点:不可用
  散列算法中:SHA256
  散列值:dc958159f5aa0d12351c8eb21b5e395b12662653150cf502d4344dcc473d6078
图像3(资源)
  描述:不可用
  创建:星期四10月28日8点59分56秒2021
  类型:多文件图像
  压缩:未压缩的
  数据大小:385536字节= 376.50 KIB = 0.37 MIB
  散列算法中: sha256
  哈希值:76d3c81294b28ed84a0a600f32b5b7d32c15186b32e35250f2796801e1a3002e
默认配置:'conf'
配置0(conf)
  说明:不可用
  内核  :fd ramd
  init
ramtdisk
done
你需要 0:00.79 来建立恢复
==== 建立恢复正常!====
运行 build_recovery 成功。
跳过 build_ramboot 缺少配置:RK_CFG_RAMBOOT。
运行 build_all 成功。
/usr/bin/fakeroot
警告:/home/rk/porj/rk356x_linux_release_20210511/ubuntu_rootfs/rk356x_ubuntu_rootfs.img 未找到!

请在 device/rockchip/.BoardConfig.mk 中设置正确的 RK_ROOTFS_IMG

创建参数...完成。
/home/rk/porj/rk356x_linux_release_20210511/device/rockchip/rk356x/parameter-ubuntu-fit.txt
0x00002000 @ 0x00004000(UBOOT),0x00002000 @ 0x00006000(MISC),0x00020000 @ 0x00008000(引导),0x00020000 @ 0x00028000(恢复), 0x00010000@0x00048000(备份),0x00c00000@0x00058000(rootfs),-@0x00c58000(userdata:grow)
创建 misc.img...完成。
警告:未找到!
创建 uboot.img...完成。
创建 idblock.bin...完成。
uboot 格式是合适的,所以忽略 trust.img...
创建加载器...完成。
创建 boot.img...完成。
图像:rockdev 中的图像已准备好使
图像正常!
文件名为 ROC-RK3568-PC-UBUNTU-GPT
重命名文件?[N|y]Make update.img
start to make update.img...
Resize rootfs partition size
dumpe2fs 1.44.1 (24-Mar-2018)
dumpe2fs: 尝试打开 /home/rk/porj 时没有这样的文件或目录/rk356x_linux_release_20210511/rockdev/rootfs.img
./mkupdate.sh: line 36: >>9: 语法错误:预期操作数(错误标记为“>>9”)
Android 固件打包工具 v1.66
------ PACKAGE ------
添加文件:./package-file
添加文件:./package-file done,offset=0x800,size=0x11a,userspace=0x1
添加文件:./Image/MiniLoaderAll.bin
添加文件:./Image/MiniLoaderAll.bin done,offset=0x1000,size=0x711c0 ,userspace=0xe3
添加文件:./Image/parameter.txt
添加文件:./Image/parameter.txt done,offset=0x72800,size=0x1d9,userspace=0x1
添加文件:./Image/uboot.img
添加文件: ./Image/uboot.img done,offset=0x73000,size=0x400000,userspace=0x800
添加文件:./Image/misc.img
添加文件:./Image/misc.img done,offset=0x473000,size=0xc000, userspace=0x18
添加文件:./Image/boot.img
添加文件:./Image/boot.img done,offset=0x47f000,size=0x1fd0600,userspace=0x3fa1
添加文件:./Image/recovery.img
添加文件:./Image/recovery.img done,offset=0x244f800,size=0x1eec800,userspace=0x3dd9
添加文件:./Image/rootfs.img
Error:<AddFile> open file failed,err=2!
------ FAILED ------
按任意键退出:
错误:运行 build_updateimg 失败!
错误:第 1257 行的退出代码 1:
    ./mkupdate.sh
rk@rk-VirtualBox:~/porj/rk356x_linux_release_20210511$ ./build.sh


作者: Book    时间: 2021-10-28 10:34
我也遇到了同样的问题,看编译日志,是rootfs.img没有创建成功,报错之前有提到RK_ROOTFS_IMG未正确设置,看了配置文件device/rockchip/.BoardConfig.mk,确实没有RK_ROOTFS_IMG,配置用的./build.sh roc-rk3568-pc-ubuntu.mk,根据官网用户手册来说,应该没问题。
请问一下,这个问题现在解决了吗?
作者: Book    时间: 2021-10-28 10:48
可以根据用户手册中“下载 Ubuntu 根文件系统”这一节下载rootfs,然后mv ubuntu-aarch64-rootfs.img ubuntu_rootfs/rk356x_ubuntu_rootfs.img,并在roc-rk3568-pc-ubuntu.mk中设置RK_ROOTFS_IMG,指向rootfs:
export RK_ROOTFS_IMG=ubuntu_rootfs/rk356x_ubuntu_rootfs.img
作者: 笨企鹅    时间: 2021-10-28 11:13
感谢各位回复,我自己也解决了,问题在于那个rootfs.img
作者: 笨企鹅    时间: 2021-10-28 11:18
Book 发表于 2021-10-28 10:48
可以根据用户手册中“下载 Ubuntu 根文件系统”这一节下载rootfs,然后mv ubuntu-aarch64-rootfs.img ubunt ...

谢谢   
作者: 笨企鹅    时间: 2021-10-28 13:36
Book 发表于 2021-10-28 10:48
可以根据用户手册中“下载 Ubuntu 根文件系统”这一节下载rootfs,然后mv ubuntu-aarch64-rootfs.img ubunt ...

谢谢
作者: bzhao    时间: 2022-2-21 10:00
缺少  ./Image/rootfs.img





欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1