We have used Tp-Link 4-32 devices for quite some years now. We were making custom builds for our grassroots, neighbourhood network, and happy with it.
However, with 18.06.1 we need to select target ar71xx_tiny... now we miss some options we find useful. We don't care about opkg, ipv6, luci... but we do care about to have some sort of snmp working on the devices, and other things, as sqm, perhaps sudo, etc...
All of that was packaged in 4 MB and worked quite well for us. So we don't want to get these abilities lost. Not asking anybody to do the work for us, so could you guys give me any pointers about how to build a "not-tiny" target so we can continue getting the features we need.
What I'm looking for is the way to have these features listed again in menuconfig.
My 2 cents: that "tiny" target is probably too much work and at the end of the day, it does not help people like us because it limits too much our build options.
In short, software evolves --> there's more code meaning larger binaries
If you're dead set on this, just revert the commits and maintain your own branch although it will most likely be a waste of time if you plan to use current software.
Just continue building from the old 17.01 branch and forget about 18.06
It will not have new features and may not be quite that secure as 18.06, but 17.01 should still do the job for you. It has had /will have some kernel updates, so some security fixes do get included.
Ps. newer Linux kernels (like in 18.06) may have trouble with 32 MB RAM. That can be even more difficult than the 4 MB flash limit.
5、Enable data optimization
Remove ipkg/opkg status data files in final images
Strip unnecessary exports from the kernel image
Strip unnecessary functions from libraries
Refer to https://blog.yichyaqc.cn/openwrt-customize-2/
I don't want to argue about need to support "old" hardware, etc. Also, I know what I can strip, etc. I understand all things said about this on this thread and others. And, generally speaking, I agree.
Instead, my points are:
1- How can I get, say, mini-snmpd appear again in menuconfig under target ar71xx_tiny. Full explanation not needed, but any pointer to menuconfig internals doc, tutorial, howto, etc, would probably save hours of work, and would be really appreciated.
2- <little_rant> I think that creating a new, restricted, "tiny" target, is not worth the effort. On which basis has been decided that 4/32 devices shouldn't have snmp, or for that matter, any other now-missing thing? This is a double waste, first some developer worked to create it, then some people like me need to work more, undoing commits and maintainig a separate branch. Things are going a little bit too far, I think.</little_rant>
3- Unexperienced people may really need an allready build tiny image, but experienced people making customs build should not be limited by the buildroot system itself. (my 2 cents)
I'm not sure why mini-smpd doesn't appear (and I seem to recall that, along with its libraries, it's actually bigger than snmpd, which supports 64-bit counters).
Within make menuconfig the dependencies can be seen with the question-mark key. That may provide some insight.
On the "why", much is captured at
without my opinions on those decisions intended to be discussed here.
after successful first build you can also modify config files to exclude support for all devices but the one you are using. on next make only mach file for your device will be included in the image. (config files will reset after this again) this can save you some space and i'm sure the whole image generating process could be tweaked to not include objects for other devices...
There is no fundamental difference between ar71xx/tiny and ar71xx/generic wrt. package selection. You likely forgot to install the feeds or made another mistake which caused packages to be missing from menuconfig.