Openwrt-创建固件版式描述失败

问题描述:

我正在尝试为VoCore v1.0创建内核映像。我从github获得了sdk文件。这样做虽然我得到了一个错误如下Openwrt-创建固件版式描述失败

/build_root/openwrt/staging_dir/host/bin/padjffs2 /build_root/openwrt/build_dir/target-mips_34kc_musl-1.1.11/linux-ar71xx_generic/tmp/openwrt-ar71xx-generic-ubnt-ls-sr71-squashfs-factory.bin 4 8 16 64 128 256 
padding image to 004e3000 
padding image to 004e4000 
padding image to 004f0000 
padding image to 00500000 
/build_root/openwrt/staging_dir/host/bin/mkfwimage -B LS-SR71 -v LS-SR71.ar7100.v6.0.0-OpenWrt-r48207 -k /build_root/openwrt/build_dir/target-mips_34kc_musl-1.1.11/linux-ar71xx_generic/ubnt-ls-sr71-kernel.bin -r /build_root/openwrt/build_dir/target-mips_34kc_musl-1.1.11/linux-ar71xx_generic/tmp/openwrt-ar71xx-generic-ubnt-ls-sr71-squashfs-factory.bin -o /build_root/openwrt/build_dir/target-mips_34kc_musl-1.1.11/linux-ar71xx_generic/tmp/openwrt-ar71xx-generic-ubnt-ls-sr71-squashfs-factory.bin 
board = LS-SR71 
ERROR: Failed creating firmware layout description - error code: -2 
make[5]: *** [/build_root/openwrt/build_dir/target-mips_34kc_musl-1.1.11/linux-ar71xx_generic/tmp/openwrt-ar71xx-generic-ubnt-ls-sr71-squashfs-factory.bin] Error 253 
make[5]: Leaving directory `/build_root/openwrt/target/linux/ar71xx/image' 
make[4]: *** [install] Error 2 
make[4]: Leaving directory `/build_root/openwrt/target/linux/ar71xx' 
make[3]: *** [install] Error 2 
make[3]: Leaving directory `/build_root/openwrt/target/linux' 
make[2]: *** [target/linux/install] Error 2 
make[2]: Leaving directory `/build_root/openwrt' 
make[1]: *** [/build_root/openwrt/staging_dir/target-mips_34kc_musl-1.1.11/stamp/.target_install] Error 2 
make[1]: Leaving directory `/build_root/openwrt' 
make: *** [world] Error 2 

我做了一些搜索上的错误,我发现,这个错误是由“mkfwimage.c”文件生成的,但我真的不得到任何有用的信息来消除这种错误。

此错误的原因:事实证明,mkfwimage错误是由执行超过目标设备闪存大小的内部版本间接生成的。

帮助我避免这个错误

+0

你尝试过什么迄今为止解决这个问题?其他人不会在这里做所有的工作。请提供更具体的问题。 –

+0

我会添加更多信息感谢您的评论 – runner

1)尝试下载的OpenWRT混沌较平静版本git clone git://git.openwrt.org/15.05/openwrt.git

2)在OpenWRT文件夹的命令行中运行make menuconfig

3)选择仅在menuconfig的下列项目:

  • 目标系统>>雷凌RT288x/RT3xxx
  • 子目标>> RT3x5x/RT5350的主板
  • 目标简介>> VoCore

4)应用这条路径:

diff --git a/target/linux/ramips/dts/VOCORE.dts b/target/linux/ramips/dts/VOCORE.dts 
index e6288b0..29867ed 100644 
--- a/target/linux/ramips/dts/VOCORE.dts 
+++ b/target/linux/ramips/dts/VOCORE.dts 
@@ -46,7 +46,7 @@ 

       [email protected] { 
        label = "firmware"; 
-     reg = <0x50000 0x7b0000>; 
+     reg = <0x50000 0xfb0000>; 
       }; 
      }; 

5)在命令行上运行make cleanmake all

(此处了解详情:http://vocore.io/wiki/index/id:15

你没有正确地搜索听到 答案是

它在功能上create_image_layout在 失败

如果(文件长度(rootfsfile)+内核级> partition_length> FIRMWARE_MAX_LENGTH)

  return (-2); 

so cases may被

  1. 您选择太多的包

  2. 你已经选择了很多司机

  3. FIRMWARE_MAX_LENGTH比要求的小(可以chenge它)

所以打印出来使用printf。并解决它你的自我。 检查它可能已经解决了相关版本。

*如果没有请提交补丁VO核心的开发

它的非常好的项目*