coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: coreutils-8.12.178-df9cd on AIX


From: Pádraig Brady
Subject: Re: coreutils-8.12.178-df9cd on AIX
Date: Thu, 01 Sep 2011 11:27:54 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:5.0) Gecko/20110707 Thunderbird/5.0

On 09/01/2011 10:07 AM, Bruno Haible wrote:
>> On AIX 6.1 and 7.1:
>> Link errors.
> 
> On AIX 6.1 and 7.1 with xlc:
> 
>   CCLD     split
> ld: 0711-317 ERROR: Undefined symbol: .pthread_getspecific
> ld: 0711-317 ERROR: Undefined symbol: .pthread_setspecific
> ld: 0711-317 ERROR: Undefined symbol: .pthread_key_create
> ld: 0711-317 ERROR: Undefined symbol: .pthread_once
> ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
> make: 1254-004 The error code from the last command is 8.
> 
> The reason is that lib/strsignal.o depends on multithreading:
> 
> $ nm lib/strsignal.o | grep pthread_once
> .pthread_once        U           -
> pthread_once_t:t44=43 -           0
> 
> The fix is to add $(LIBTHREAD) to split_LDADD in src/Makefile.am.

Hmm, that would fix it, but I'm wary of adding the dependency.
Threading is only required to provide a thread safe version of strsignal()
which will return separate pointers to the strings for each thread.
I wonder in future could the strsignal replacement only do the threading
stuff when built with the _REENTRANT define etc.?
Anyway for the moment we might just remove the use of strsignal()
from split.c (it's just an error message).

> Once this error is fixed:
> 
>   CC       stat.o
> "stat.c", line 210.21: 1506-022 (S) "f_basetype" is not a member of "const 
> struct statfs".

> make: 1254-004 The error code from the last command is 1.
> 
> The error in line 210:
> $ grep STRUCT_STAT lib/config.h
> /* #undef HAVE_STRUCT_STATFS_F_FSTYPENAME */
> /* #undef HAVE_STRUCT_STATFS_F_NAMELEN */
> #define HAVE_STRUCT_STATFS_F_TYPE 1
> #define HAVE_STRUCT_STATVFS_F_BASETYPE 1
> /* #undef HAVE_STRUCT_STATVFS_F_FSTYPENAME */
> #define HAVE_STRUCT_STATVFS_F_NAMEMAX 1
> /* #undef HAVE_STRUCT_STATVFS_F_TYPE */
> /* #undef HAVE_STRUCT_STAT_ST_ATIMENSEC */
> /* #undef HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC */
> /* #undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC */
> /* #undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC */
> /* #undef HAVE_STRUCT_STAT_ST_AUTHOR */
> /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC */
> /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */
> /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC */
> #define HAVE_STRUCT_STAT_ST_BLOCKS 1
>    `HAVE_STRUCT_STAT_ST_BLOCKS' instead. */
> /* #undef STRUCT_STATFS_F_FSID_IS_INTEGER */
> /* #undef STRUCT_STATVFS_F_FSID_IS_INTEGER */
> /* #undef TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC */
> 
> It comes from the fact that 'struct statvfs', defined in <sys/statvfs.h>,
> has an f_basetype field, but 'struct statfs', which is being used here and
> which is defined in <sys/statfs.h>, does not have an f_basetype field.

What fix did you apply here?

> Once this error is fixed:
> 
> 3 of 359 tests failed
> 
> FAIL: misc/help-version

env isn't finding [
Was that built?

> FAIL: misc/pwd-long

I don't see what the issue is with line 53 of that script.
I'd need access to debug

> FAIL: split/l-chunk

This will probably avoid that issue:

diff --git a/tests/split/l-chunk b/tests/split/l-chunk
index 7bf6989..e1c9ec7 100755
--- a/tests/split/l-chunk
+++ b/tests/split/l-chunk
@@ -108,7 +108,7 @@ for ELIDE_EMPTY in '' '-e'; do
         echo "$lines"
       fi
     done
-    test "$ELIDE_EMPTY" && EXP=exp.elide_empty || EXP=exp
+    test -z "$ELIDE_EMPTY" && EXP=exp || EXP=exp.elide_empty
     compare out $EXP || fail=1
   done
 done

cheers,
Pádraig.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]