OpenWrt Forum Archive

Topic: ImageBuilder doesn't emit a *sysupgrade.bin image; how to?

The content of this topic has been archived on 1 May 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Hi all,

I'm trying to use ImageBuilder to build a cjdns/802.11s based meshbox for a localmesh I'd like to start building out in Ireland, for fun. I'm using a mix of hardware for this but the prototype is a TP-Link TL-WR841Nv7 because it's well supported in OpenWRT but represents a pretty low baseline for hardware; anything that'll fit on its 4MB chip will probably fit on any reasonable OpenWRT meshbox to be added later.

When I found I couldn't install the needed packages with opkg because of space constraints, and couldn't uninstall built-in packages to recover space, I decided to try ImageBuilder. So far it's awesome; really fast, near-zeroconfig, and easy to use.

However, for reasons unknown to me, the emitted images in /bin after use do not include *sysupgrade.bin images, so I am not sure how to use them to upgrade my hardware. When I use `sysupgrade -T <image>` it reports the openwrt-15.05-ar71xx-generic-root.squashfs image file is invalid.

Other people using ImageBuilder on similar hardware do get the sysupgrade image as expected.

This is deep Makefile magic; I'll continue exploring, but if anyone has an answer that'd help accelerate the desired outcome I'd be very grateful. smile

too many packages included to fit 4M

Hey stas2z, thanks for the quick reply.

So, do you mean that if the package list is bigger than the expected flash can contain, it successfully builds system images but quietly doesn't build sysupgrade images? So, if I trim things down I might get the image I'm looking for, but I'll only know if it builds correctly? smile

Thanks!

cathalgarvey wrote:

Hey stas2z, thanks for the quick reply.

So, do you mean that if the package list is bigger than the expected flash can contain, it successfully builds system images but quietly doesn't build sysupgrade images? So, if I trim things down I might get the image I'm looking for, but I'll only know if it builds correctly? smile

Thanks!

Derp; I looked back over the make output, and even though the make finishes "successfully" it is in fact reporting image size errors throughout. When I build a vanilla image it's fine.

I assumed that if there were fatal errors, that make would return an error code; my shell's set up to colourise when things break, so I saw "green" and thought "everything's fine, where's my image?" smile

Anyways, I had to sacrifice luci and ppp but I got wpad-mes and authsae to fit, but no CJDNS; the 4MB routers will have to be "dumb pipes" in whatever setup I put together, I think.

Thanks again!

just a few tips to fit your packages:
0. use buildroot to build image, not imagebuilder
1. switch to the older Barrier Breaker release as it smaller
2. disable gdb and any other debug features in the config
3. use sstrip
4. remove ipv6 support if it's not necessary in yr setup (disable it in the configuration)

In case of luci preinstallation:
5. use minify luci source option
6. use special compilers to compact js/html/css files of yr packages

(Last edited by stas2z on 16 Dec 2015, 15:33)

The discussion might have continued from here.