Mailing List Archive

uclibc-ng upgrade
Hi all,

I have cross armv6j-hardfloat-linux-uclibceabi chroot that I use to create
binary packages for a raspberry pi. Typically, I use a qemu wrapper to
access the chroot and update the system, then the real hardware pulls the
binaries from there and life is good.

I finally pulled off the band-aid of updating to uclibc-ng. Other than a
little surface trouble (my own fault) following the guide worked well, and
I now have a fully up to date sysroot.

Now another use case I have, is that I use a cross toolchain that I've
created with crossdev to build a bunch of software projects against the arm
sysroot. I build and run the unit tests (via qemu) regularly as part of a
regression system.

I updated my cross environment to use
cross-armv6j-hardfloat-linux-uclibceabi/uclibc-ng (using a similar process
as explained in the uclibc-ng upgrade guide). However, now I cannot build
the cross gcc against uclibc-ng. It gets so far (to libgomp) then fails in
a conftest, with an error of "ld: cannot find crti.o: No such file or
directory". crti.o and crt1.o and crtn.o are all present in
/usr/armv6j-hardfloat-linux-uclibceabi/usr/lib, and owned by
cross-x-y-z/uclibc-ng. Not sure how to proceed. I can build cross gcc if
I set USE="", ie. building JUST a C compiler, no
fortran/cpp/openmp/nls/nptl.

Any insight would be great. Do I need to patch gcc? Is there a uclibc-ng
overlay like there is for musl that I cannot find?

Thanks,
Dave
Re: uclibc-ng upgrade [ In reply to ]
Dave Flogeras wrote:
> I can build cross gcc if I set USE="", ie. building JUST a C
> compiler, no fortran/cpp/openmp/nls/nptl.
>
> Any insight would be great. Do I need to patch gcc? Is there a
> uclibc-ng overlay like there is for musl that I cannot find?

Don't know about this specific case, but maybe uclibc-ng doesn't
support nptl?

Also - where exactly does the conftest fail? You have a positive
(USE="") and a negative test (USE="something") so you can try to
compare the two.


//Peter
Re: uclibc-ng upgrade [ In reply to ]
Hey Peter, thanks for the reply

On Sat, Feb 11, 2017 at 9:23 AM, Peter Stuge <peter@stuge.se> wrote:

>
> Don't know about this specific case, but maybe uclibc-ng doesn't
> support nptl?
>
> Also - where exactly does the conftest fail? You have a positive
> (USE="") and a negative test (USE="something") so you can try to
> compare the two.
>
>
AFAIK uclibc-ng supports nptl. Inside my chroot, building "natively" via
qemu, I have the default USE="fortran cxx openmp vtv nptl nls" with no
trouble.

Back in cross compiler land, I tried making
cross-armv6j-hardfloat-linux-uclibceabi/gcc with more of those USE flags.
It built fine with only USE="nptl nls", but when I add any of fortran, cxx,
openmp it fails to build in the way described. USE=vtv only has an effect
if cxx is enabled IIRC.

Dave