[uClibc 0005254]: Can not build uClibc-0.9.30-rc1 on x86_64

bugs at busybox.net bugs at busybox.net
Mon Oct 6 08:02:19 UTC 2008


The following issue has been SUBMITTED. 
====================================================================== 
http://busybox.net/bugs/view.php?id=5254 
====================================================================== 
Reported By:                chrisz
Assigned To:                uClibc
====================================================================== 
Project:                    uClibc
Issue ID:                   5254
Category:                   Architecture Specific
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     assigned
====================================================================== 
Date Submitted:             10-06-2008 01:02 PDT
Last Modified:              10-06-2008 01:02 PDT
====================================================================== 
Summary:                    Can not build uClibc-0.9.30-rc1 on x86_64
Description: 
I need to build uClibc on an x86_64 system including pthreads and locale
support.

There are 2 issues. The first I can work around, the second I am having
difficulty with.

Issue http://busybox.net/bugs/view.php?id=1 is the same issue as reported in
bug# 000254 without a
resolution. The problem apparently occurs because at line 347 of stdlib.c,
we have extern __typeof(strtol) __XL_NPP(strtoll);

Unfortunately, strtol is declared to return a long int, whereas strtoll_l
is declared in stdlib.h to return a long long int, and thus we get a
conflict. This also occurs 4 other times in this file on different
functions. Simply commenting out these offending prototypes in stdlib.c
allows the compilation to complete.

Issue http://busybox.net/bugs/view.php?id=2 is the one I need assistance with.
After completing the build, I
compile and link it against bash. When I try and run, I get the
following:

root:/sources/embedded/chris/bash/bash-3.2# chroot /mnt/clfs /bin/bash
--login +h
argc=3 argv=0x7fffdd822478 envp=0x7fffdd822498
ELF header=0x7f23d5612000
First Dynamic section entry=0x7f23d5821de8
Scanning DYNAMIC section
Done scanning DYNAMIC section
About to do library loader relocations
Done relocating ldso; we can now use globals and make function calls!
_dl_get_ready_to_run:172: Cool, ldso survived making function calls
_dl_malloc:921: mmapping more memory
_dl_get_ready_to_run:354: Lib Loader: (0xd5612000) /lib/ld64-uClibc.so.0
_dl_get_ready_to_run:292: calling mprotect on the application program
_dl_get_ready_to_run:621: Loading: (0x7f23d540d000) /lib/libdl.so.0
_dl_get_ready_to_run:621: Loading: (0x7f23d513b000) /lib/libc.so.0
_dl_get_ready_to_run:621: Loading: (0x7f23d513b000) /lib/libc.so.0
_dl_get_ready_to_run:748: Beginning relocation fixups
transfering control to application @ 0x4180b0
/bin/bash: libc/stdio/_stdio.c: 283: _stdio_validate_FILE: Assertion
`((unsigned int)(stream->__user_locking)) <= 2' failed.
Aborted

I'm stuck here and can't proceed further. Can anyone suggest what is
happening and how to resolve it? At the point it is failing printf is not
available (it causes a segfault if I try and use it) so I can't even
insert debugging code to try and track down what is happening. I'm not
sure if my short cut to solving issue http://busybox.net/bugs/view.php?id=1
could be causing an unexpected
problem here.

Looking for any assistance you can offer. Config is attached.

Thanks,

Chris

====================================================================== 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
10-06-08 01:02  chrisz         New Issue                                    
10-06-08 01:02  chrisz         Status                   new => assigned     
10-06-08 01:02  chrisz         Assigned To               => uClibc          
10-06-08 01:02  chrisz         File Added: .config                          
======================================================================




More information about the uClibc-cvs mailing list