首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Openwrt-创建固件布局描述失败

Openwrt-创建固件布局描述失败
EN

Stack Overflow用户
提问于 2016-01-18 11:10:38
回答 2查看 420关注 0票数 0

我正在尝试为VoCore v1.0构建内核映像。我得到了github的sdk文件。这样做时,我得到了一个错误,如下所示

代码语言:javascript
复制
/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“文件中生成的,但是我并没有真正得到任何有用的信息来删除这样的错误。

造成此错误的原因:事实证明,that映像错误是通过执行超过目标设备的闪存大小的构建间接生成的。

帮我避免这个错误

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-18 22:25:39

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

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

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

  • 目标系统>>罗利克RT288x/RT3xxx
  • 次目标>> RT3x5x/RT3x5x 5350基板
  • 目标轮廓>> VoCore

4)采用这条道路:

代码语言:javascript
复制
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)

票数 0
EN

Stack Overflow用户

发布于 2016-01-25 07:05:10

你还没有找到正确的答案

它在函数create_image_layout中失败

如果(filelength(rootfsfile) +内核->分区_长度> FIRMWARE_MAX_LENGTH)

代码语言:javascript
复制
          return (-2);

所以情况可能是

  1. 你选择的包裹太多了
  2. 你选择了很多司机
  3. FIRMWARE_MAX_LENGTH比要求的要小(你可以给它打电话)

所以用printf打印出来。自己解决这个问题。检查它是否可能在延迟版本中得到解决。

*如果没有,请向Vo Core的开发人员提交补丁

这是一个非常好的项目*

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34853285

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档