PowerPC snapshot compilation failures

Peter S. Mazinger ps.m at gmx.net
Sat Sep 24 13:50:19 UTC 2005


On Sat, 24 Sep 2005, Glauber de Oliveira Costa wrote:

> The 2 files (procfs.h and syscalls.h - complete path omitted) were
> exactly the same. So, as expected, the errors were also exactly the same.
> 
> I just tried today (Sep 24) snapshot.
> 
> glauber
> 
> On Sat, Sep 24, 2005 at 09:00:42AM +0200, Peter S. Mazinger wrote:
> > On Sat, 24 Sep 2005, Glauber de Oliveira Costa wrote:
> > 
> > > Hi all,
> > > 
> > > I just tried to compile today's snapshot in a IBM pSeries box, and it 
> > > was unsuccessfull. Bellow, there is a summary of the errors with some 
> > > comments
> > > 
> > > - vfork.S fails to compile. If the line #include <error.h> is wipped out 
> > > from libc/sysdeps/linux/powerpc/bits/syscalls.h, everything seems to 
> > > flow okay. As the intel file does not include this file, I'm assuming 
> > > that it should not be there anyway.

what is the failure?

__set_errno is used and INTERNAL_SYSCALL_ERRNO, so maybe errno.h should 
be included instead of error.h

> > > 
> > > - linuxthreads compilation fails. It goes okay if I comment out the 
> > > following definitions from libc/sysdeps/linux/powerpc/sys/procfs.h :
> > > 
> > > 	* ELF_NVRREG
> > > 	* elf_greg_t
> > > 	* elf_gregset_t
> > > 	* elf_fpreg_t
> > > 	* elf_fpregset_t
> > > 	* elf_vrreg_t
> > > 	* elf_vrregset_t
> > > 
> > > It seems that the ppc kernel defines them in its own way at 
> > > include/asm/elf.h
> > > 
> > > Though it does seems easy #ifdef placement problems, you guys surely
> > > know where to place them better than I do.
> > > 
> > > Please, note that it is my first contact to uclibc, so I'm sorry if 
> > > I'm saying stupid things at all :-)
> > > 
> > > BTW, compilation does not suceed at all, receiving an error message when
> > > compiling shared libraries, but I'm done for today. Just in case it helps
> > > somebody, I'm also posting the error message:
> > > 
> > > ld  -shared --warn-common --warn-once -z combreloc -z defs -s -soname=libdl.so.0 \
> > > -o libdl-0.9.28.so -fini dl_cleanup --whole-archive libdl_pic.a \
> > > --no-whole-archive ../..//libc/misc/internals/interp.o \
> > > -L../..//lib -lc  ../../lib/ld-uClibc.so.0 /usr/lib/gcc-lib/powerpc-suse-linux/3.3.3/libgcc.a;
> > > ld: Error: The symbol `__syscall_error' has a R_PPC_REL24 relocation, that means '../..//lib/libc.a(brk.o)' was
> > > compiled without -fPIC.

This is normally not possible, all the uClibc is compiled w/ -fPIC, unless 
you have changed something in Rules.mak/Makefiles (there is though a 
slightly difference, powerpc uses -fpic, could you make a test, if 
changing in Rules.mak -fpic to -fPIC causes the same, I expect it will). 
Is this a cross-compiler? It does not look like buildroot so better 
describe your build environment/toolchain.

> > 
> > try a newer snapshot, it should fail at least less times

on the 20. there were changes related to a similar case, I wanted to be 
sure you have catched these too.

Peter

-- 
Peter S. Mazinger <ps dot m at gmx dot net>           ID: 0xA5F059F2
Key fingerprint = 92A4 31E1 56BC 3D5A 2D08  BB6E C389 975E A5F0 59F2




More information about the uClibc mailing list