aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--FAQ.in13
-rw-r--r--sysdeps/unix/sysv/linux/configure.in17
3 files changed, 35 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index f981a98c53..fdb9851753 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2002-05-19 Andreas Jaeger <aj@suse.de>
+
+ * sysdeps/unix/sysv/linux/configure.in: Warn against an
+ installation in /usr/local.
+
2002-05-16 Bruno Haible <bruno@clisp.org>
* sysdeps/unix/sysv/aix/bits/ioctl-types.h: Don't use multiline
diff --git a/FAQ.in b/FAQ.in
index f35dd342f6..b6d4ac00c5 100644
--- a/FAQ.in
+++ b/FAQ.in
@@ -1028,6 +1028,19 @@ This version is needed because the fpos_t type and a few libio internals
have changed in glibc 2.2, and gcc 2.95.3 contains a corresponding patch.
+?? Why shall glibc never get installed on GNU/Linux systems in
+/usr/local?
+
+{AJ} The GNU C compiler treats /usr/local/include and /usr/local/lib in a
+special way, these directories will be searched before the system
+directories. Since on GNU/Linux the system directories /usr/include and
+/usr/lib contain a --- possibly different --- version of glibc and mixing
+certain files from different glibc installations is not supported and will
+break, you risk breaking your complete system. If you want to test a glibc
+installation, use another directory as argument to --prefix. If you like to
+install this glibc version as default version, overriding the existing one,
+use --prefix=/usr and everything will go in the right places.
+
? Source and binary incompatibilities, and what to do about them
?? I expect GNU libc to be 100% source code compatible with
diff --git a/sysdeps/unix/sysv/linux/configure.in b/sysdeps/unix/sysv/linux/configure.in
index 486b10d7cb..5362d45aab 100644
--- a/sysdeps/unix/sysv/linux/configure.in
+++ b/sysdeps/unix/sysv/linux/configure.in
@@ -185,6 +185,23 @@ if test "$linuxthreads_missing"; then
fi
fi
+if test "$prefix" = "/usr/local" -o "$prefix" = "/usr/local/" -o "$prefix" = "NONE"; then
+ if test $enable_sanity = yes; then
+ echo "\
+*** On GNU/Linux systems the GNU C Library should not be installed into
+*** /usr/local since this might make your system totally unusable.
+*** We strongly advise to use a different prefix. For details read the FAQ.
+*** If you really mean to do this, run configure again using the extra
+*** parameter \`--disable-sanity-checks'."
+ exit 1
+ else
+ echo "\
+*** WARNING: Do you really want to install the GNU C Library into /usr/local?
+*** This might make your system totally unusable, for details read the FAQ."
+ fi
+fi
+
+
# One Linux we use ldconfig.
use_ldconfig=yes