0

我正在尝试为VoCore v1.0构建内核映像。我从 github 获得了 sdk 文件。这样做时我收到如下错误

/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 错误是通过执行超出目标设备闪存大小的构建而间接生成的。

帮我避免这个错误

4

2 回答 2

0

1) 尝试下载 OpenWRT Chaos Calmer 版本git clone git://git.openwrt.org/15.05/openwrt.git

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

3) 仅在 menuconfig 上选择以下项目:

  • 目标系统 >> Ralink 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 @@

                partition@50000 {
                    label = "firmware";
-                   reg = <0x50000 0x7b0000>;
+                   reg = <0x50000 0xfb0000>;
                };
            };

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

(更多信息:http: //vocore.io/wiki/index/id :15 )

于 2016-01-18T22:25:39.817 回答
0

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

它在函数 create_image_layout 中失败

if (filelength(rootfsfile) + kernel->partition_length > FIRMWARE_MAX_LENGTH)

          return (-2);

所以情况可能是

  1. 您选择的包太多

  2. 您选择了许多驱动程序

  3. FIRMWARE_MAX_LENGTH 小于要求(您可以更改它)

所以使用 printf 打印出来。并自己解决。检查它是否可能已在最新版本中解决。

*如果不是请向 Vo Core 的开发者提交补丁

非常好的项目*

于 2016-01-25T07:05:10.017 回答