On 1/6/2021 01:08, Thomas Mueller wrote: >> I was using uclibc-ng builds for MIPS to build netboot images between 2017 >> and 2019 to refine my build processes. uclibc-ng still produces smaller >> overall binaries and libs for the netboot than musl does (usually ~1MB >> smaller, which is actually significant, especially on SGI IP22 systems). > >> Unfortunately for uclibc-ng, it stopped working for me in ~2019. I have no >> clue why, either. The March 2019 uclibc-ng MIPS stage3 I built internally >> works perfectly fine when you unpack it and leave it alone, but as soon as >> you compile *anything* more recent with the compiler that's when the >> breaking begins. > >> Rebuilding ncurses in this stage3 will break Python, which breaks emerge. >> Never figured it out. I can trace the failure using GDB to a point in >> Python, but not much farther beyond that. I assume the true cause is >> something in uclibc-ng itself. Upstream seems to like to borrow chunks of >> glibc for things, and I wonder if that may be partly to blame. > >> I eventually gave up and went to musl for MIPS/o32. musl quite literally >> JustWorks(). It's great. Even with that tiny bit of bloat in the netboot >> build (workable, cause I needed to make NFS Root an option anyways). > >> So long story short, I won't shed any tears if uclibc-ng goes away. > >> Joshua Kinard > > I wonder if uclibc-ng people fixed the bugs since your ill fortune, or if > uclibc-ng development has fallen off. > > Since musl works so much better for you, you will probably not want to go > back. > > How did you build your March 2019 stage3, or where would I go on Gentoo > website? > > I would naturally seek something more current, glibc or musl probably > preferable to uclibc-ng. > > Tom
I tried a more recent uclibc-ng earlier in 2020 and it still broke as soon as it compiled ncurses. I'm sure there's probably a compile path where if the right libraries are rebuilt in the right order, I can get it working again, but it's not worth the time spent. The machine I am working on is not a hyper-fast x86/x64 system, but rather a ~15-year old MIPS-based SGI Octane. gcc-10.2.0 takes ~15hrs to compile, among other things. If I cared enough, I could probably try starting a new root image from scratch by piecing packages together from crossdev, or find another base to morph into a Gentoo image. Maybe one day. The stage3 I refer to isn't available publicly. It was a test build I did and never released. Current mips stages are available on the mirrors in the 'experimental' folder. They're primarily targeted at older big-endian MIPS-III and MIPS-IV platforms. As for how I built it, that's done through our 'catalyst' tool for stage-building. You can check the Wiki for more info on how that works. -- Joshua Kinard Gentoo/MIPS ku...@gentoo.org rsa6144/5C63F4E3F5C6C943 2015-04-27 177C 1972 1FB8 F254 BAD0 3E72 5C63 F4E3 F5C6 C943 "The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between." --Emperor Turhan, Centauri Republic