Dear all,
I'm developer of Optware-ng https://github.com/alllexx88/Optware-ng, an attempt to "revive" the obsolete Optware. All three feeds currently use Buildroot 2015-02 toolchains, two of them (arm and mipsel) use uClibc 0.9.33.2 as the libc. These uClibc targets (especially mipsel) have some hard-to-debug issues that are quite possible due to uClibc-0.9.33.2 bugs (glibc target has no such problems), so I'm thinking to switch to uClibc-ng using the latest Buildroot. The question is whether Buildroot-2015-02's uClibc 0.9.33.2 and uClibc-ng 1.0.6 are compatible? Can I simply compile new toolchain and re-package the libc, or do I need to recompile the entire repos from scratch?
Hi Alex, Alex Potapenko wrote,
Dear all,
I'm developer of Optware-ng, an attempt to "revive" the obsolete Optware. All three feeds currently use Buildroot 2015-02 toolchains, two of them (arm and mipsel) use uClibc 0.9.33.2 as the libc. These uClibc targets (especially mipsel) have some hard-to-debug issues that are quite possible due to uClibc-0.9.33.2 bugs (glibc target has no such problems), so I'm thinking to switch to uClibc-ng using the latest Buildroot. The question is whether Buildroot-2015-02's uClibc 0.9.33.2 and uClibc-ng 1.0.6 are compatible? Can I simply compile new toolchain and re-package the libc, or do I need to recompile the entire repos from scratch?
The best thing is to recompile.
uClibc-ng 1.0.6 is more or less compatible to uClibc-git master, which is rather not fully compatible to the three years old uClibc 0.9.33.2.
In uClibc world you never have a full compatible libc, as you can change so many options. So their even might be ABI incompatibilities between the same uClibc version, when you recompile with other options.
If you find any compile or runtime problems using uClibc-ng in your packages, feel free to report them here :)
best regards Waldemar