[uClibc 0000820]: Compilation failure for mips with new linuxthreads

bugs at busybox.net bugs at busybox.net
Thu Nov 13 20:57:38 UTC 2008


A NOTE has been added to this issue. 
====================================================================== 
http://busybox.net/bugs/view.php?id=820 
====================================================================== 
Reported By:                hsudek
Assigned To:                uClibc
====================================================================== 
Project:                    uClibc
Issue ID:                   820
Category:                   Posix Threads
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     assigned
====================================================================== 
Date Submitted:             04-09-2006 01:16 PDT
Last Modified:              11-13-2008 12:57 PST
====================================================================== 
Summary:                    Compilation failure for mips with new linuxthreads
Description: 
Using daily snapshot, buildroot fails to compile with the following error:

  CC libpthread/linuxthreads/sysdeps/pthread/errno-loc.os
In file included from
libpthread/linuxthreads/sysdeps/pthread/errno-loc.c:23:
./libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/sysdep-cancel.h:20:20:
error: sysdep.h: No such file or directory
make: *** [libpthread/linuxthreads/sysdeps/pthread/errno-loc.os] Error 1


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

---------------------------------------------------------------------- 
 psm - 04-10-06 13:43  
---------------------------------------------------------------------- 
dont use that version, enable LINUXTHREADS_OLD 

---------------------------------------------------------------------- 
 GJanak - 08-01-06 01:18  
---------------------------------------------------------------------- 
Compiling for powerpc the same.
(I'm using the OLD... weired.) 
Your solution is working.
Thanks.

 

---------------------------------------------------------------------- 
 rhabarber1848 - 11-13-08 07:21  
---------------------------------------------------------------------- 
Using uClibc 0.9.30 compiling LINUXTHREADS_OLD for ppc works out-of-the
box.
Doing the same with LINUXTHREADS_NEW needs the attached patch. 

---------------------------------------------------------------------- 
 bernhardf - 11-13-08 07:31  
---------------------------------------------------------------------- 
So you successfully ran some thorough threads testsuite? Can you attach the
results, please? 

---------------------------------------------------------------------- 
 rhabarber1848 - 11-13-08 12:57  
---------------------------------------------------------------------- 
Assuming you mean uClibc/test/pthread/* I compiled/executed those tests.
Attached you will find the logs, two on the PowerPC-powered Dbox (using
Linuxthreads old and new) and one from my x86 host machine (using LT old)
running Debian Lenny.

All logs show some errors and its up to you to decide how to interpret
them;)

One note about this error with LT old at powerpc:

testing mq_receive                     ..../cancellation-points..: can't
resolve symbol 'mq_receive' in lib './cancellation-points'.
. failed ;(
testing mq_send                        ..../cancellation-points..: can't
resolve symbol 'mq_send' in lib './cancellation-points'.
. failed ;(
testing mq_timedreceive                ..../cancellation-points..: can't
resolve symbol 'mq_timedreceive' in lib './cancellation-points'.
. failed ;(
testing mq_timedsend                   ..../cancellation-points..: can't
resolve symbol 'mq_timedsend' in lib './cancellation-points'.
. failed ;(

Using LT new I could not even link test/pthread/cancellation-points at
all:

powerpc-tuxbox-linux-uclibc-gcc  -s -B../../lib -Wl,-rpath,/lib
-Wl,-rpath-link,/lib -Wl,--dynamic-linker,/lib/ld-uClibc.so.0
cancellation-points.o -o cancellation-points -lpthread -lrt
cancellation-points.o: In function `cancel_thread_mq_receive':
cancellation-points.c:(.text+0x82c): undefined reference to `mq_receive'
cancellation-points.o: In function `cancel_thread_mq_send':
cancellation-points.c:(.text+0x8cc): undefined reference to `mq_send'
cancellation-points.o: In function `cancel_thread_mq_timedreceive':
cancellation-points.c:(.text+0x970): undefined reference to
`mq_timedreceive'
cancellation-points.o: In function `cancel_thread_mq_timedsend':
cancellation-points.c:(.text+0xa14): undefined reference to
`mq_timedsend'

I had to comment out these functions to link cancellation-points. 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
04-09-06 01:16  hsudek         New Issue                                    
04-09-06 01:16  hsudek         Status                   new => assigned     
04-09-06 01:16  hsudek         Assigned To               => uClibc          
04-10-06 13:43  psm            Note Added: 0001245                          
08-01-06 01:16  GJanak         Note Added: 0001553                          
08-01-06 01:18  GJanak         Note Edited: 0001553                         
08-23-06 20:00  vapier         Summary                  Compliation failure for
mips => Compliation failure for mips with new linuxthreads
10-08-08 04:15  bernhardf      Category                 Architecture Specific =>
Posix Threads
10-08-08 04:15  bernhardf      Summary                  Compliation failure for
mips with new linuxthreads => Compilation failure for mips with new linuxthreads
11-13-08 07:21  rhabarber1848  Note Added: 0015764                          
11-13-08 07:22  rhabarber1848  File Added: uclibc-0.9.30.diff                   

11-13-08 07:31  bernhardf      Note Added: 0015774                          
11-13-08 12:57  rhabarber1848  Note Added: 0015784                          
======================================================================




More information about the uClibc-cvs mailing list