Obtain configuration from library
lancethepants at gmail.com
Mon Apr 16 16:45:42 UTC 2018
What router are you using? It would be best if you could find the
original toolchain that compiled your firmware if you want to link
against the router's libraries. Presumably the manufacturer of the
router should release the source code and accompanying toolchain. That's
where first I would go, but maybe you've already pursued that route.
My next suggestion would be to create statically linked binaries. If
there's something not quite right with linking against the embedded
devices libraries, and the toolchain you created is suitable for that
architecture and linux kernel version, that might give some better
results. The binaries will be bigger, but you can strip them and
compress with upx to squeeze out some of the size.
If you do go the route of static binaries, then I would use a suitable
toolchain with the latest of uclibc-ng and gcc. That particular version
of uclibc is very old, and maybe there is just an issue with it that has
been addressed in uclibc-ng. I've had better luck with stability using
newer versions of gcc and uclibc-ng.
If you have a relatively new off the shelf consumer router, something
like asus, netgear ( arm or mipsel cpus) that you can load 3rd party
firmware on, you might take a look at my project "tomatoware". You can
compile from source directly on the router. It links against it's own
included libraries, or you can create a static binary that is portable
and non-dependant on the tomatware environment.
On 4/16/2018 8:45 AM, Jesus Alonso wrote:
> Thanks for help :-)
> Unfortunately I already tried that (enabled thread debugging, disabled
> stripping, enabled debugging symbols, enabling gdbserver). Unfortunately I
> cannot get gdb to build. It builds nicely with latest buildroot, but I need
> version 2016.02 or earlier because later version do not have uClibc 0.9.32.
> I might give gdb another try.
> Jesús Alonso
> uClibc mailing list
> uClibc at uclibc.org
More information about the uClibc