cvs head build almost success on Linux/athlon

Christian Iseli chris@ludwig-alpha.unil.ch
Fri Apr 26 14:47:00 GMT 2002


Hi folks,

I have managed to build and test current glibc CVS using latest HJ's binutils, 
and gcc-3.1 from CVS.  It looks mostly fine, but there are a few issues.

The setup:
$ ld -V
GNU ld version 2.12.90.0.7 20020423
  Supported emulations:
   elf_i386
   i386linux
 
$ gcc -v
Reading specs from /usr/lib/gcc-lib/athlon-redhat-linux/3.1/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
 --infodir=/usr/share/info --enable-shared --enable-threads=posix
 --disable-checking --host=athlon-redhat-linux --with-system-zlib
Thread model: posix
gcc version 3.1 20020424 (prerelease)

First thing is that "make localedata/install-locales" must be run as root, 
even if the rest is built and installed as a normal user.  The reason seems to 
be that the install process attempts to create files in /usr/lib/locale (some 
cache things), and ignores the destination directory.

Second thing is that even when run as root, "make localedata/install-locales" 
does not install any locales.  According to what I see in the log, the locale 
is built, but nothing gets installed (neither in the specified install dir, 
nor in /usr/lib/locale).

There are the 3 failures in make check:
make[2]: ***
 [/usr/src/redhat/BUILD/libc/build-athlon-linux/math/test-float.out]
 Error 1
make[2]: ***
 [/usr/src/redhat/BUILD/libc/build-athlon-linux/math/test-ifloat.out]
 Error 1
make[1]: *** [math/tests] Error 2
make[2]: ***
 [/usr/src/redhat/BUILD/libc/build-athlon-linux/libio/bug-ungetwc2.out]
 Error 1
make[1]: *** [libio/tests] Error 2
make: *** [check] Error 2

I attach the content of the files below.

Finally, there is a separate issue (probably in GCC) that shows up while
building gcc-3.1 using an installed version of the new glibc.  The libstdc++
attempts to use some new features of the new glibc library.  Here is an exerpt
from one of the files (messages_members.h):
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
      __c_locale __old = __uselocale(_M_c_locale_messages);
      char* __msg = gettext(_M_convert_to_char(__dfault));
      __uselocale(__old);
      return _M_convert_from_char(__msg);
#else
      const char* __old = setlocale(LC_ALL, _M_name_messages);
      char* __msg = gettext(_M_convert_to_char(__dfault));
      setlocale(LC_ALL, __old);
      return _M_convert_from_char(__msg);
#endif

Are they wrong (and should be notified), or is a change to glibc in the works ?

Kind regards,
					Christian

-------------- next part --------------
testing float (inline functions)
Failure: Test: Real part of: cacosh (-2 - 3 i) == -1.9833870299165354323470769028940395 + 2.1414491111159960199416055713254211 i
Result:
 is:         -1.98338806629180908203e+00  -0x1.fbbf5200000000000000p+0
 should be:  -1.98338699340820312500e+00  -0x1.fbbf4000000000000000p+0
 difference:  1.07288360595703125000e-06   0x1.20000000000000000000p-20
 ulp       :  9.0000
 max.ulp   :  4.0000
Maximal error of real part of: cacosh
 is      : 9 ulp
 accepted: 4 ulp
Maximal error of imaginary part of: cacosh
 is      : 0 ulp
 accepted: 4 ulp

Test suite completed:
  2422 test cases plus 2218 tests for exception flags executed.
  2 errors occurred.
-------------- next part --------------
testing float (without inline functions)
Failure: Test: Real part of: cacosh (-2 - 3 i) == -1.9833870299165354323470769028940395 + 2.1414491111159960199416055713254211 i
Result:
 is:         -1.98338806629180908203e+00  -0x1.fbbf5200000000000000p+0
 should be:  -1.98338699340820312500e+00  -0x1.fbbf4000000000000000p+0
 difference:  1.07288360595703125000e-06   0x1.20000000000000000000p-20
 ulp       :  9.0000
 max.ulp   :  4.0000
Maximal error of real part of: cacosh
 is      : 9 ulp
 accepted: 4 ulp
Maximal error of imaginary part of: cacosh
 is      : 0 ulp
 accepted: 4 ulp

Test suite completed:
  2484 test cases plus 2280 tests for exception flags executed.
  2 errors occurred.
-------------- next part --------------

Note: This program runs on de_DE.UTF-8 locale.



More information about the Libc-alpha mailing list