Update.
1998-03-26 Andreas Jaeger <aj@arthur.rhein-neckar.de> * manual/install.texi (Supported Configurations): Add arm-linuxaout and arm-none. 1998-03-26 Ulrich Drepper <drepper@cygnus.com> * version.h (VERSION): Bump to 2.0.93. 1998-03-25 07:30 H.J. Lu <hjl@gnu.org> * configure.in (libc_cv_ar_S): New to indicate if ar S works. * config.make.in (have-ar-S): New, substituted by libc_cv_ar_S. * Makerules (CREATE_ARFLAGS): New determined by $(have-ar-S). (do-ar, build-extra-lib): Use $(CREATE_ARFLAGS) for $(AR). 1998-03-26 Ulrich Drepper <drepper@cygnus.com> * Makeconfig (link-libc): Add missing use of libc_nonshared.a. 1998-03-26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> Put the static-only routines in a separate library. * Makeconfig (libtype.oS, CFLAGS-.oS, CPPFLAGS-.oS): New variables. (all-object-suffixes): Add .oS. * Makerules (libc_static-name): New variable. (installed-libcs): Add libc_nonshared.a. ($(inst_libdir)/libc.so): Use libc_nonshared.a instead of libc.a. (object-suffixes-for-rules): New variable. Use it instead of object-suffixes for generating compilation rules. (rmobjs): Also remove *.oS. * Rules (subdir_lib): Depend on $(objpfx)stamp.oS. ($(objpfx)stamp.oS): New target. 1998-03-26 Ulrich Drepper <drepper@cygnus.com> * Makefile (FAQ): Automatically check in regenerated FAQ. 1998-03-26 10:16 Zack Weinberg <zack@rabi.phys.columbia.edu> * Makefile (INSTALL): Depend on install.texi, not maint.texi.
This commit is contained in:
parent
6f5ea8c717
commit
a35cb74d75
45
ChangeLog
45
ChangeLog
|
@ -1,3 +1,48 @@
|
||||||
|
1998-03-26 Andreas Jaeger <aj@arthur.rhein-neckar.de>
|
||||||
|
|
||||||
|
* manual/install.texi (Supported Configurations): Add
|
||||||
|
arm-linuxaout and arm-none.
|
||||||
|
|
||||||
|
1998-03-26 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
|
* version.h (VERSION): Bump to 2.0.93.
|
||||||
|
|
||||||
|
1998-03-25 07:30 H.J. Lu <hjl@gnu.org>
|
||||||
|
|
||||||
|
* configure.in (libc_cv_ar_S): New to indicate if ar S works.
|
||||||
|
|
||||||
|
* config.make.in (have-ar-S): New, substituted by libc_cv_ar_S.
|
||||||
|
|
||||||
|
* Makerules (CREATE_ARFLAGS): New determined by $(have-ar-S).
|
||||||
|
(do-ar, build-extra-lib): Use $(CREATE_ARFLAGS) for $(AR).
|
||||||
|
|
||||||
|
1998-03-26 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
|
* Makeconfig (link-libc): Add missing use of libc_nonshared.a.
|
||||||
|
|
||||||
|
1998-03-26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||||||
|
|
||||||
|
Put the static-only routines in a separate library.
|
||||||
|
* Makeconfig (libtype.oS, CFLAGS-.oS, CPPFLAGS-.oS): New
|
||||||
|
variables.
|
||||||
|
(all-object-suffixes): Add .oS.
|
||||||
|
* Makerules (libc_static-name): New variable.
|
||||||
|
(installed-libcs): Add libc_nonshared.a.
|
||||||
|
($(inst_libdir)/libc.so): Use libc_nonshared.a instead of libc.a.
|
||||||
|
(object-suffixes-for-rules): New variable. Use it instead of
|
||||||
|
object-suffixes for generating compilation rules.
|
||||||
|
(rmobjs): Also remove *.oS.
|
||||||
|
* Rules (subdir_lib): Depend on $(objpfx)stamp.oS.
|
||||||
|
($(objpfx)stamp.oS): New target.
|
||||||
|
|
||||||
|
1998-03-26 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
|
* Makefile (FAQ): Automatically check in regenerated FAQ.
|
||||||
|
|
||||||
|
1998-03-26 10:16 Zack Weinberg <zack@rabi.phys.columbia.edu>
|
||||||
|
|
||||||
|
* Makefile (INSTALL): Depend on install.texi, not maint.texi.
|
||||||
|
|
||||||
1998-03-25 Ulrich Drepper <drepper@cygnus.com>
|
1998-03-25 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/sparc/sparc64/Dist: Add sizes.h.
|
* sysdeps/unix/sysv/linux/sparc/sparc64/Dist: Add sizes.h.
|
||||||
|
|
178
FAQ
178
FAQ
|
@ -26,16 +26,17 @@ please let me know.
|
||||||
1.4. Do I need a special linker or archiver?
|
1.4. Do I need a special linker or archiver?
|
||||||
1.5. What tools do I need for powerpc?
|
1.5. What tools do I need for powerpc?
|
||||||
1.6. Do I need some more things to compile GNU C Library?
|
1.6. Do I need some more things to compile GNU C Library?
|
||||||
1.7. When I run `nm -u libc.so' on the produced library I still
|
1.7. What version of the Linux kernel headers should be used?
|
||||||
|
1.8. When I run `nm -u libc.so' on the produced library I still
|
||||||
find unresolved symbols. Can this be ok?
|
find unresolved symbols. Can this be ok?
|
||||||
1.8. What are these `add-ons'?
|
1.9. What are these `add-ons'?
|
||||||
1.9. My XXX kernel emulates a floating-point coprocessor for me.
|
1.10. My XXX kernel emulates a floating-point coprocessor for me.
|
||||||
Should I enable --with-fp?
|
Should I enable --with-fp?
|
||||||
1.10. When compiling GNU libc I get lots of errors saying functions
|
1.11. When compiling GNU libc I get lots of errors saying functions
|
||||||
in glibc are duplicated in libgcc.
|
in glibc are duplicated in libgcc.
|
||||||
1.11. Why do I get messages about missing thread functions when I use
|
1.12. Why do I get messages about missing thread functions when I use
|
||||||
the librt? I don't even use threads.
|
librt? I don't even use threads.
|
||||||
1.12. What's the problem with configure --enable-omitfp?
|
1.13. What's the problem with configure --enable-omitfp?
|
||||||
|
|
||||||
2. Installation and configuration issues
|
2. Installation and configuration issues
|
||||||
|
|
||||||
|
@ -58,23 +59,28 @@ please let me know.
|
||||||
glibc 2.x?
|
glibc 2.x?
|
||||||
2.9. The `gencat' utility cannot process the catalog sources which
|
2.9. The `gencat' utility cannot process the catalog sources which
|
||||||
were used on my Linux libc5 based system. Why?
|
were used on my Linux libc5 based system. Why?
|
||||||
2.10. I have set up /etc/nis.conf, and the Linux libc 5 with NYS
|
2.10. Programs using libc have their messages translated, but other
|
||||||
|
behavior is not localized (e.g. collating order); why?
|
||||||
|
2.11. I have set up /etc/nis.conf, and the Linux libc 5 with NYS
|
||||||
works great. But the glibc NIS+ doesn't seem to work.
|
works great. But the glibc NIS+ doesn't seem to work.
|
||||||
2.11. I have killed ypbind to stop using NIS, but glibc will
|
2.12. I have killed ypbind to stop using NIS, but glibc
|
||||||
continue using NIS.
|
continues using NIS.
|
||||||
2.12. After installing glibc name resolving doesn't work properly.
|
2.13. Under Linux/Alpha, I always get "do_ypcall: clnt_call:
|
||||||
2.13. I have /usr/include/net and /usr/include/scsi as symlinks
|
RPC: Unable to receive; errno = Connection refused" when using NIS.
|
||||||
|
2.14. After installing glibc name resolving doesn't work properly.
|
||||||
|
2.15. I have /usr/include/net and /usr/include/scsi as symlinks
|
||||||
into my Linux source tree. Is that wrong?
|
into my Linux source tree. Is that wrong?
|
||||||
2.14. Programs like `logname', `top', `uptime' `users', `w' and
|
2.16. Programs like `logname', `top', `uptime' `users', `w' and
|
||||||
`who', show incorrect information about the (number of)
|
`who', show incorrect information about the (number of)
|
||||||
users on my system. Why?
|
users on my system. Why?
|
||||||
2.15. After upgrading to glibc 2.1 with symbol versioning I get
|
2.17. After upgrading to glibc 2.1 with symbol versioning I get
|
||||||
errors about undefined symbols. What went wrong?
|
errors about undefined symbols. What went wrong?
|
||||||
2.16. When I start the program XXX after upgrading the library
|
2.18. When I start the program XXX after upgrading the library
|
||||||
I get
|
I get
|
||||||
XXX: Symbol `_sys_errlist' has different size in shared
|
XXX: Symbol `_sys_errlist' has different size in shared
|
||||||
object, consider re-linking
|
object, consider re-linking
|
||||||
Why? What should I do?
|
Why? What should I do?
|
||||||
|
2.19. What do I need for C++ development?
|
||||||
|
|
||||||
3. Source and binary incompatibilities, and what to do about them
|
3. Source and binary incompatibilities, and what to do about them
|
||||||
|
|
||||||
|
@ -100,6 +106,8 @@ please let me know.
|
||||||
3.10. I can't compile with gcc -traditional (or
|
3.10. I can't compile with gcc -traditional (or
|
||||||
-traditional-cpp). Why?
|
-traditional-cpp). Why?
|
||||||
3.11. I get some errors with `gcc -ansi'. Isn't glibc ANSI compatible?
|
3.11. I get some errors with `gcc -ansi'. Isn't glibc ANSI compatible?
|
||||||
|
3.12. I can't access some functions anymore. nm shows that they do
|
||||||
|
exist but linking fails nevertheless.
|
||||||
|
|
||||||
4. Miscellaneous
|
4. Miscellaneous
|
||||||
|
|
||||||
|
@ -148,14 +156,14 @@ you are really interested in porting it, contact
|
||||||
GNU CC are used to increase portability and speed.
|
GNU CC are used to increase portability and speed.
|
||||||
|
|
||||||
GNU CC is found, like all other GNU packages, on
|
GNU CC is found, like all other GNU packages, on
|
||||||
ftp://prep.ai.mit.edu/pub/gnu
|
ftp://ftp.gnu.org/pub/gnu
|
||||||
and the many mirror sites. prep is always overloaded, so try to find
|
and the many mirror sites. ftp.gnu.org is always overloaded, so try to find
|
||||||
a local mirror first.
|
a local mirror first.
|
||||||
|
|
||||||
You always should try to use the latest official release. Older
|
You always should try to use the latest official release. Older
|
||||||
versions may not have all the features GNU libc requires. On most
|
versions may not have all the features GNU libc requires. The current
|
||||||
supported platforms (for powerpc see question question 1.5), 2.7.2.3 is
|
releases of egcs (1.0.2) and GNU CC (2.8.1) should work with the GNU C
|
||||||
the earliest version that works at all.
|
library (for powerpc see question question 1.5).
|
||||||
|
|
||||||
|
|
||||||
1.3. When I try to compile glibc I get only error messages.
|
1.3. When I try to compile glibc I get only error messages.
|
||||||
|
@ -183,7 +191,7 @@ Always get the newest release of GNU binutils available. Older
|
||||||
releases are known to have bugs that prevent a successful compilation.
|
releases are known to have bugs that prevent a successful compilation.
|
||||||
|
|
||||||
{ZW} As of release 2.1 a linker supporting symbol versions is
|
{ZW} As of release 2.1 a linker supporting symbol versions is
|
||||||
required. For Linux, get binutils-2.8.1.0.17 or later. Other systems
|
required. For Linux, get binutils-2.8.1.0.23 or later. Other systems
|
||||||
may have native linker support, but it's moot right now, because glibc
|
may have native linker support, but it's moot right now, because glibc
|
||||||
has not been ported to them.
|
has not been ported to them.
|
||||||
|
|
||||||
|
@ -215,7 +223,7 @@ in configparms. Later versions of egcs may fix these problems.
|
||||||
|
|
||||||
* GNU gettext. This package contains the tools needed to construct
|
* GNU gettext. This package contains the tools needed to construct
|
||||||
`message catalog' files containing translated versions of system
|
`message catalog' files containing translated versions of system
|
||||||
messages. See ftp://prep.ai.mit.edu/pub/gnu or better any mirror
|
messages. See ftp://ftp.gnu.org/pub/gnu or better any mirror
|
||||||
site. (We distribute compiled message catalogs, but they may not be
|
site. (We distribute compiled message catalogs, but they may not be
|
||||||
updated in patches.)
|
updated in patches.)
|
||||||
|
|
||||||
|
@ -252,7 +260,19 @@ in configparms. Later versions of egcs may fix these problems.
|
||||||
If you have some more measurements let me know.
|
If you have some more measurements let me know.
|
||||||
|
|
||||||
|
|
||||||
1.7. When I run `nm -u libc.so' on the produced library I still
|
1.7. What version of the Linux kernel headers should be used?
|
||||||
|
|
||||||
|
{AJ,UD} The headers from the most recent Linux kernel should be used.
|
||||||
|
The headers used while compiling the GNU C library and the kernel
|
||||||
|
binary used when using the library do not need to match. The GNU C
|
||||||
|
library runs without problems on kernels that are older than the
|
||||||
|
kernel headers used. The other way round (compiling the GNU C library
|
||||||
|
with old kernel headers and running on a recent kernel) does not
|
||||||
|
necessarily work. For example you can't use new kernel features when
|
||||||
|
using old kernel headers for compiling the GNU C library.
|
||||||
|
|
||||||
|
|
||||||
|
1.8. When I run `nm -u libc.so' on the produced library I still
|
||||||
find unresolved symbols. Can this be ok?
|
find unresolved symbols. Can this be ok?
|
||||||
|
|
||||||
{UD} Yes, this is ok. There can be several kinds of unresolved
|
{UD} Yes, this is ok. There can be several kinds of unresolved
|
||||||
|
@ -272,7 +292,7 @@ Generally, you should make sure you find a real program which produces
|
||||||
errors while linking before deciding there is a problem.
|
errors while linking before deciding there is a problem.
|
||||||
|
|
||||||
|
|
||||||
1.8. What are these `add-ons'?
|
1.9. What are these `add-ons'?
|
||||||
|
|
||||||
{UD} To avoid complications with export rules or external source
|
{UD} To avoid complications with export rules or external source
|
||||||
code some optional parts of the libc are distributed as separate
|
code some optional parts of the libc are distributed as separate
|
||||||
|
@ -296,7 +316,7 @@ just about anything else. The existing makefiles do most of the work;
|
||||||
only some few stub rules must be written to get everything running.
|
only some few stub rules must be written to get everything running.
|
||||||
|
|
||||||
|
|
||||||
1.9. My XXX kernel emulates a floating-point coprocessor for me.
|
1.10. My XXX kernel emulates a floating-point coprocessor for me.
|
||||||
Should I enable --with-fp?
|
Should I enable --with-fp?
|
||||||
|
|
||||||
{ZW} An emulated FPU is just as good as a real one, as far as the C
|
{ZW} An emulated FPU is just as good as a real one, as far as the C
|
||||||
|
@ -310,7 +330,7 @@ far more trouble than it's worth: you then have to compile
|
||||||
(libgcc.a for GNU C), because the calling conventions change.
|
(libgcc.a for GNU C), because the calling conventions change.
|
||||||
|
|
||||||
|
|
||||||
1.10. When compiling GNU libc I get lots of errors saying functions
|
1.11. When compiling GNU libc I get lots of errors saying functions
|
||||||
in glibc are duplicated in libgcc.
|
in glibc are duplicated in libgcc.
|
||||||
|
|
||||||
{EY} This is *exactly* the same problem that I was having. The
|
{EY} This is *exactly* the same problem that I was having. The
|
||||||
|
@ -328,24 +348,23 @@ some problems of this kind. The setting of CFLAGS is checked at the
|
||||||
very beginning and if it is not usable `configure' will bark.
|
very beginning and if it is not usable `configure' will bark.
|
||||||
|
|
||||||
|
|
||||||
1.11. Why do I get messages about missing thread functions when I use
|
1.12. Why do I get messages about missing thread functions when I use
|
||||||
the librt? I don't even use threads.
|
librt? I don't even use threads.
|
||||||
|
|
||||||
{UD} In this case you probably mixed up your installation of the libc.
|
{UD} In this case you probably mixed up your installation. librt uses
|
||||||
The librt internally uses threads and it has implicit references to
|
threads internally and has implicit references to the thread library.
|
||||||
the thread library. Normally these references are satisfied
|
Normally these references are satisfied automatically but if the
|
||||||
automatically but if the thread library belonging to the librt is not
|
thread library is not in the expected place you must tell the linker
|
||||||
in the expected place one has to specify this place. When using GNU
|
where it is. When using GNU ld it works like this:
|
||||||
ld it works like this:
|
|
||||||
|
|
||||||
gcc -o foo foo.c -Wl,-rpath-link=/some/other/dir -lrt
|
gcc -o foo foo.c -Wl,-rpath-link=/some/other/dir -lrt
|
||||||
|
|
||||||
The `/some/other/dir' should contain the matching thread library and
|
The `/some/other/dir' should contain the thread library. `ld' will
|
||||||
`ld' will use the given path to find the implicitly referenced library
|
use the given path to find the implicitly referenced library while not
|
||||||
while not disturbing any other link path order.
|
disturbing any other link path.
|
||||||
|
|
||||||
|
|
||||||
1.12. What's the problem with configure --enable-omitfp?
|
1.13. What's the problem with configure --enable-omitfp?
|
||||||
|
|
||||||
{AJ} When --enable-omitfp is set the libraries are built without frame
|
{AJ} When --enable-omitfp is set the libraries are built without frame
|
||||||
pointers. Some compilers produce buggy code for this model and
|
pointers. Some compilers produce buggy code for this model and
|
||||||
|
@ -468,7 +487,7 @@ See question 3.8 for details.
|
||||||
and source code. Until this law gets abolished we cannot ship the
|
and source code. Until this law gets abolished we cannot ship the
|
||||||
cryptographic functions together with glibc.
|
cryptographic functions together with glibc.
|
||||||
|
|
||||||
The functions are available, as an add-on (see question 1.8). People in the
|
The functions are available, as an add-on (see question 1.9). People in the
|
||||||
US may get it from the same place they got GNU libc from. People
|
US may get it from the same place they got GNU libc from. People
|
||||||
outside the US should get the code from ftp://ftp.ifi.uio.no/pub/gnu,
|
outside the US should get the code from ftp://ftp.ifi.uio.no/pub/gnu,
|
||||||
or another archive site outside the USA. The README explains how to
|
or another archive site outside the USA. The README explains how to
|
||||||
|
@ -588,9 +607,9 @@ GROUP ( libc.so.6 ld-linux.so.2 libc.a )
|
||||||
2.8. How can I compile gcc 2.7.2.1 from the gcc source code using
|
2.8. How can I compile gcc 2.7.2.1 from the gcc source code using
|
||||||
glibc 2.x?
|
glibc 2.x?
|
||||||
|
|
||||||
{AJ} There's only correct support for glibc 2.0.x in gcc 2.7.2.3
|
{AJ} There's only correct support for glibc 2.0.x in gcc 2.7.2.3 or
|
||||||
or later. You should get at least gcc 2.7.2.3. All previous versions
|
later. But you should get at least gcc 2.8.1 or egcs 1.0.2 (or later
|
||||||
had problems with glibc support.
|
versions) instead.
|
||||||
|
|
||||||
|
|
||||||
2.9. The `gencat' utility cannot process the catalog sources which
|
2.9. The `gencat' utility cannot process the catalog sources which
|
||||||
|
@ -628,7 +647,21 @@ catalog files to the XPG4 form:
|
||||||
-----------------------------------------------------------------------
|
-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
2.10. I have set up /etc/nis.conf, and the Linux libc 5 with NYS
|
2.10. Programs using libc have their messages translated, but other
|
||||||
|
behavior is not localized (e.g. collating order); why?
|
||||||
|
|
||||||
|
{ZW} Translated messages are automatically installed, but the locale
|
||||||
|
database that controls other behaviors is not. You need to run
|
||||||
|
localedef to install this database, after you have run `make
|
||||||
|
install'. For example, to set up the French Canadian locale, simply
|
||||||
|
issue the command
|
||||||
|
|
||||||
|
localedef -i fr_CA -f ISO-8859-1 fr_CA
|
||||||
|
|
||||||
|
Please see localedata/README in the source tree for further details.
|
||||||
|
|
||||||
|
|
||||||
|
2.11. I have set up /etc/nis.conf, and the Linux libc 5 with NYS
|
||||||
works great. But the glibc NIS+ doesn't seem to work.
|
works great. But the glibc NIS+ doesn't seem to work.
|
||||||
|
|
||||||
{TK} The glibc NIS+ implementation uses a /var/nis/NIS_COLD_START
|
{TK} The glibc NIS+ implementation uses a /var/nis/NIS_COLD_START
|
||||||
|
@ -640,24 +673,33 @@ it with nisinit from the nis-tools package (available at
|
||||||
http://www-vt.uni-paderborn.de/~kukuk/linux/nisplus.html).
|
http://www-vt.uni-paderborn.de/~kukuk/linux/nisplus.html).
|
||||||
|
|
||||||
|
|
||||||
2.11. I have killed ypbind to stop using NIS, but glibc will
|
2.12. I have killed ypbind to stop using NIS, but glibc
|
||||||
continue using NIS.
|
continues using NIS.
|
||||||
|
|
||||||
{TK} For faster NIS lookups, glibc uses the /var/yp/binding/ files
|
{TK} For faster NIS lookups, glibc uses the /var/yp/binding/ files
|
||||||
from ypbind. ypbind 3.3 and older versions don't always remove these
|
from ypbind. ypbind 3.3 and older versions don't always remove these
|
||||||
files, so glibc will use them furthermore. Other BSD versions seem to
|
files, so glibc will continue to use them. Other BSD versions seem to
|
||||||
work correct. Until ypbind 3.4 is released, you can find a patch at
|
work correctly. Until ypbind 3.4 is released, you can find a patch at
|
||||||
ftp://ftp.kernel.org/pub/linux/utils/net/NIS/ypbind-3.3-glibc2.diff.
|
ftp://ftp.kernel.org/pub/linux/utils/net/NIS/ypbind-3.3-glibc3.diff.
|
||||||
|
|
||||||
|
|
||||||
2.12. After installing glibc name resolving doesn't work properly.
|
2.13. Under Linux/Alpha, I always get "do_ypcall: clnt_call:
|
||||||
|
RPC: Unable to receive; errno = Connection refused" when using NIS.
|
||||||
|
|
||||||
|
{TK} You need a ypbind version which is 64bit clean. Some versions
|
||||||
|
are not 64bit clean. A 64bit clean implementation is ypbind-mt. For
|
||||||
|
ypbind 3.3, you need the patch from ftp.kernel.org (See the previous
|
||||||
|
question). I don't know about other versions.
|
||||||
|
|
||||||
|
|
||||||
|
2.14. After installing glibc name resolving doesn't work properly.
|
||||||
|
|
||||||
{AJ} You probably should read the manual section describing
|
{AJ} You probably should read the manual section describing
|
||||||
nsswitch.conf (just type `info libc "NSS Configuration File"').
|
nsswitch.conf (just type `info libc "NSS Configuration File"').
|
||||||
The NSS configuration file is usually the culprit.
|
The NSS configuration file is usually the culprit.
|
||||||
|
|
||||||
|
|
||||||
2.13. I have /usr/include/net and /usr/include/scsi as symlinks
|
2.15. I have /usr/include/net and /usr/include/scsi as symlinks
|
||||||
into my Linux source tree. Is that wrong?
|
into my Linux source tree. Is that wrong?
|
||||||
|
|
||||||
{PB} This was necessary for libc5, but is not correct when using
|
{PB} This was necessary for libc5, but is not correct when using
|
||||||
|
@ -668,14 +710,14 @@ any symlink that you have in place before you install glibc. However,
|
||||||
/usr/include/asm and /usr/include/linux should remain as they were.
|
/usr/include/asm and /usr/include/linux should remain as they were.
|
||||||
|
|
||||||
|
|
||||||
2.14. Programs like `logname', `top', `uptime' `users', `w' and
|
2.16. Programs like `logname', `top', `uptime' `users', `w' and
|
||||||
`who', show incorrect information about the (number of)
|
`who', show incorrect information about the (number of)
|
||||||
users on my system. Why?
|
users on my system. Why?
|
||||||
|
|
||||||
{MK} See question 3.2.
|
{MK} See question 3.2.
|
||||||
|
|
||||||
|
|
||||||
2.15. After upgrading to glibc 2.1 with symbol versioning I get
|
2.17. After upgrading to glibc 2.1 with symbol versioning I get
|
||||||
errors about undefined symbols. What went wrong?
|
errors about undefined symbols. What went wrong?
|
||||||
|
|
||||||
{AJ} The problem is caused either by wrong program code or tools. In
|
{AJ} The problem is caused either by wrong program code or tools. In
|
||||||
|
@ -689,7 +731,7 @@ the price you might have to pay once for quite a number of advantages
|
||||||
with symbol versioning.
|
with symbol versioning.
|
||||||
|
|
||||||
|
|
||||||
2.16. When I start the program XXX after upgrading the library
|
2.18. When I start the program XXX after upgrading the library
|
||||||
I get
|
I get
|
||||||
XXX: Symbol `_sys_errlist' has different size in shared
|
XXX: Symbol `_sys_errlist' has different size in shared
|
||||||
object, consider re-linking
|
object, consider re-linking
|
||||||
|
@ -711,6 +753,16 @@ might be possible that a symbol changed size when that should not have
|
||||||
happened. So in case of doubt report such a warning message as a
|
happened. So in case of doubt report such a warning message as a
|
||||||
problem.
|
problem.
|
||||||
|
|
||||||
|
|
||||||
|
2.19. What do I need for C++ development?
|
||||||
|
|
||||||
|
{HJ,AJ} You need either egcs 1.0.2 or gcc-2.8.1 with libstdc++
|
||||||
|
2.8.1 (or more recent versions). libg++ 2.7.2 (and the Linux Versions
|
||||||
|
2.7.2.x) doesn't work very well with the GNU C library due to vtable thunks.
|
||||||
|
If you're upgrading from glibc 2.0.x to 2.1 you have to recompile
|
||||||
|
libstdc++ since the library compiled for 2.0 is not compatible due to the new
|
||||||
|
Large File Support (LFS) in version 2.1.
|
||||||
|
|
||||||
|
|
||||||
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
||||||
|
|
||||||
|
@ -963,7 +1015,7 @@ to do so. For example constructs of the form:
|
||||||
enum {foo
|
enum {foo
|
||||||
#define foo foo
|
#define foo foo
|
||||||
}
|
}
|
||||||
are useful for debugging purpuses (you can use foo with your debugger
|
are useful for debugging purposes (you can use foo with your debugger
|
||||||
that's why we need the enum) and for compatibility (other systems use
|
that's why we need the enum) and for compatibility (other systems use
|
||||||
defines and check with #ifdef).
|
defines and check with #ifdef).
|
||||||
|
|
||||||
|
@ -980,6 +1032,21 @@ standards with feature flags).
|
||||||
The GNU C library is conforming to ANSI/ISO C - if and only if you're
|
The GNU C library is conforming to ANSI/ISO C - if and only if you're
|
||||||
only using the headers and library functions defined in the standard.
|
only using the headers and library functions defined in the standard.
|
||||||
|
|
||||||
|
|
||||||
|
3.12. I can't access some functions anymore. nm shows that they do
|
||||||
|
exist but linking fails nevertheless.
|
||||||
|
|
||||||
|
{AJ} With the introduction of versioning in glibc 2.1 it is possible
|
||||||
|
to export only those identifiers (functions, variables) that are
|
||||||
|
really needed by application programs and by other parts of glibc.
|
||||||
|
This way a lot of internal interfaces are now hidden. nm will still
|
||||||
|
show those identifiers but marking them as internal. ISO C states
|
||||||
|
that identifiers beginning with an underscore are internal to the
|
||||||
|
libc. An application program normally shouldn't use those internal
|
||||||
|
interfaces (there are exceptions, e.g. __ivaliduser). If a program
|
||||||
|
uses these interfaces, it's broken. These internal interfaces might
|
||||||
|
change between glibc releases or dropped completely.
|
||||||
|
|
||||||
|
|
||||||
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
||||||
|
|
||||||
|
@ -989,7 +1056,7 @@ only using the headers and library functions defined in the standard.
|
||||||
or higher is required for this script'. What can I do?
|
or higher is required for this script'. What can I do?
|
||||||
|
|
||||||
{UD} You have to get the specified autoconf version (or a later one)
|
{UD} You have to get the specified autoconf version (or a later one)
|
||||||
from your favorite mirror of prep.ai.mit.edu.
|
from your favorite mirror of ftp.gnu.org.
|
||||||
|
|
||||||
|
|
||||||
4.2. When I try to compile code which uses IPv6 headers and
|
4.2. When I try to compile code which uses IPv6 headers and
|
||||||
|
@ -1018,6 +1085,7 @@ Answers were given by:
|
||||||
{ZW} Zack Weinberg, <zack@rabi.phys.columbia.edu>
|
{ZW} Zack Weinberg, <zack@rabi.phys.columbia.edu>
|
||||||
{TK} Thorsten Kukuk, <kukuk@vt.uni-paderborn.de>
|
{TK} Thorsten Kukuk, <kukuk@vt.uni-paderborn.de>
|
||||||
{GK} Geoffrey Keating, <Geoff.Keating@anu.edu.au>
|
{GK} Geoffrey Keating, <Geoff.Keating@anu.edu.au>
|
||||||
|
{HJ} H.J. Lu, <hjl@gnu.org>
|
||||||
|
|
||||||
Local Variables:
|
Local Variables:
|
||||||
mode:outline
|
mode:outline
|
||||||
|
|
2
FAQ.in
2
FAQ.in
|
@ -33,6 +33,8 @@ probably in the future, are:
|
||||||
powerpc-*-linux-gnu Linux and MkLinux on PowerPC systems
|
powerpc-*-linux-gnu Linux and MkLinux on PowerPC systems
|
||||||
sparc-*-linux-gnu Linux-2.x on SPARC
|
sparc-*-linux-gnu Linux-2.x on SPARC
|
||||||
sparc64-*-linux-gnu Linux-2.x on UltraSPARC
|
sparc64-*-linux-gnu Linux-2.x on UltraSPARC
|
||||||
|
arm-*-none ARM standalone systems
|
||||||
|
arm-*-linuxaout Linux-2.x on ARM using a.out binaries
|
||||||
|
|
||||||
Ports to other Linux platforms are in development, and may in fact
|
Ports to other Linux platforms are in development, and may in fact
|
||||||
work already, but no one has sent us success reports for them.
|
work already, but no one has sent us success reports for them.
|
||||||
|
|
11
Makeconfig
11
Makeconfig
|
@ -405,7 +405,7 @@ ifeq (yes,$(build-shared))
|
||||||
link-libc = -Wl,-rpath-link=$(rpath-link) \
|
link-libc = -Wl,-rpath-link=$(rpath-link) \
|
||||||
$(common-objpfx)libc.so$(libc.so-version) \
|
$(common-objpfx)libc.so$(libc.so-version) \
|
||||||
$(elfobjdir)/$(rtld-installed-name) \
|
$(elfobjdir)/$(rtld-installed-name) \
|
||||||
$(common-objpfx)libc.a $(gnulib)
|
$(common-objpfx)libc_nonshared.a $(gnulib)
|
||||||
# Choose the default search path for the dynamic linker based on
|
# Choose the default search path for the dynamic linker based on
|
||||||
# where we will install libraries.
|
# where we will install libraries.
|
||||||
ifneq ($(libdir),$(slibdir))
|
ifneq ($(libdir),$(slibdir))
|
||||||
|
@ -573,7 +573,7 @@ endif
|
||||||
# The compilation rules use $(CPPFLAGS-${SUFFIX}) and $(CFLAGS-${SUFFIX})
|
# The compilation rules use $(CPPFLAGS-${SUFFIX}) and $(CFLAGS-${SUFFIX})
|
||||||
# to pass different flags for each flavor.
|
# to pass different flags for each flavor.
|
||||||
libtypes = $(foreach o,$(object-suffixes),$(libtype$o))
|
libtypes = $(foreach o,$(object-suffixes),$(libtype$o))
|
||||||
all-object-suffixes := .o .os .op .og .ob
|
all-object-suffixes := .o .os .op .og .ob .oS
|
||||||
object-suffixes :=
|
object-suffixes :=
|
||||||
ifeq (yes,$(build-static))
|
ifeq (yes,$(build-static))
|
||||||
CPPFLAGS-.o = $(pic-default)
|
CPPFLAGS-.o = $(pic-default)
|
||||||
|
@ -619,6 +619,13 @@ CFLAGS-.ob = -g -fbounded-pointers
|
||||||
libtype.ob = lib%_b.a
|
libtype.ob = lib%_b.a
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Special library that contains the static-only routines for libc.
|
||||||
|
libtype.oS = lib%_nonshared.a
|
||||||
|
# Must build the routines as PIC, though, because they can end up in (users')
|
||||||
|
# shared objects. We don't want to use CFLAGS-os because users may, for
|
||||||
|
# example, make that processor-specific.
|
||||||
|
CFLAGS-.oS = $(CFLAGS-.o) $(pic-ccflag)
|
||||||
|
CPPFLAGS-.oS = $(CPPFLAGS-.o)
|
||||||
|
|
||||||
+gnu-stabs = $(shell echo>&2 '*** BARF ON ME')
|
+gnu-stabs = $(shell echo>&2 '*** BARF ON ME')
|
||||||
|
|
||||||
|
|
5
Makefile
5
Makefile
|
@ -336,12 +336,15 @@ define format-me
|
||||||
makeinfo --no-validate --no-warn --no-headers $< -o $@
|
makeinfo --no-validate --no-warn --no-headers $< -o $@
|
||||||
-chmod a-w $@
|
-chmod a-w $@
|
||||||
endef
|
endef
|
||||||
INSTALL: manual/maint.texi; $(format-me)
|
INSTALL: manual/install.texi; $(format-me)
|
||||||
NOTES: manual/creature.texi; $(format-me)
|
NOTES: manual/creature.texi; $(format-me)
|
||||||
manual/dir-add.texi manual/dir-add.info: FORCE
|
manual/dir-add.texi manual/dir-add.info: FORCE
|
||||||
$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
|
$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
|
||||||
FAQ: gen-FAQ.pl FAQ.in
|
FAQ: gen-FAQ.pl FAQ.in
|
||||||
$(PERL) $^ > $@.new && rm -f $@ && mv $@.new $@ && chmod a-w $@
|
$(PERL) $^ > $@.new && rm -f $@ && mv $@.new $@ && chmod a-w $@
|
||||||
|
ifeq ($(with-cvs),yes)
|
||||||
|
test ! -d CVS || cvs $(CVSOPTS) commit -m'Regenerated: $(PERL) $^' $@
|
||||||
|
endif
|
||||||
FORCE:
|
FORCE:
|
||||||
|
|
||||||
rpm/%: subdir_distinfo
|
rpm/%: subdir_distinfo
|
||||||
|
|
|
@ -12,6 +12,8 @@ configurations:
|
||||||
powerpc-*-linux-gnu Linux and MkLinux on PowerPC systems
|
powerpc-*-linux-gnu Linux and MkLinux on PowerPC systems
|
||||||
sparc-*-linux-gnu Linux-2.x on SPARC
|
sparc-*-linux-gnu Linux-2.x on SPARC
|
||||||
sparc64-*-linux-gnu Linux-2.x on UltraSPARC
|
sparc64-*-linux-gnu Linux-2.x on UltraSPARC
|
||||||
|
arm-*-none ARM standalone systems
|
||||||
|
arm-*-linuxaout Linux-2.x on ARM using a.out binaries
|
||||||
|
|
||||||
|
|
||||||
Former releases of this library (version 1.09.1 and perhaps earlier
|
Former releases of this library (version 1.09.1 and perhaps earlier
|
||||||
|
|
|
@ -260,6 +260,8 @@ following patterns:
|
||||||
|
|
||||||
@smallexample
|
@smallexample
|
||||||
alpha-@var{anything}-linux
|
alpha-@var{anything}-linux
|
||||||
|
arm-@var{anything}-linuxaout
|
||||||
|
arm-@var{anything}-none
|
||||||
i@var{x}86-@var{anything}-gnu
|
i@var{x}86-@var{anything}-gnu
|
||||||
i@var{x}86-@var{anything}-linux
|
i@var{x}86-@var{anything}-linux
|
||||||
m68k-@var{anything}-linux
|
m68k-@var{anything}-linux
|
||||||
|
|
Loading…
Reference in New Issue