===============README PLEASE========================================
There are two new functions, setdomainname () and getdomainname ().
You need the new uname () in the kernel 0.99 pl9 + ALPHA diff or
0.99 pl 10 to use it. Linus will make them soon. If you use an older
kernel, as long as you don't compile any source codes which use
uname (), gethostname (), setdomainname () and getdomainname (), you
will be fine. The new uname () is located at a different address, see
<sys/syscall.h>. Old binaries which use uname () and gethostname ()
should work as before. Please be careful when you compile the Linux
C library yourself. I don's suggest you compile it yourself if
you don't have the kernel 0.99 pl 10 source installed and you
have no clue what you are doing. Please read ChangeLog and
./libc-linux/include for details.
The reason I do that is gcc 2.4.0 needs the Linux C library 4.4.
====================================================================
This is the release of the Linux C library 4.4. You have to
install the source code of 0.99 pl5 to use it since there are some
changes in kernel. You have to use 0.99 pl9 + ALPHA diff or 0.99 pl 10
kernel to use new [f]pathconf () since it uses f_namelen in struct
statfs as well as domainname support. You also need gcc 2.3.3 or above
to use it.
NOTE: I have put patch-2.0.12g8.diff.z, which uses the new pathconf ()
in pub/linux/packages/GCC/patches. I am sure you will love it.
It chooses the extension `#'/`~' or `.rej'/`.orig' at the run
time depending on the filesystem on which the new file will be
created.
You can get this package under pub/linux/packages/GCC from
tsx-11.mit.edu. The file names are inc-4.4.tar.z, libc-4.4.tar.z,
libc-4.3.3-4.4.tar.z, inc-4.3.3-4.4.tar.z, image-4.4.tar.z and
extra-4.4.tar.z. Also binutils.tar.z and binutils-1.9l.tar.z.
WARNING: PLEASE READ THEM. Read ChangeLog for details of the bug fixes
and changes.
0) Since some C++ header files are changed in the Linux C library
4.4, please install libg++ 2.3 first and install libc 4.4 until
libg++ 2.4 is released.
1) There is a change in ./libc-linux/sysdeps/linux/i386/__load.c.
Please read the ChangeLog. Please check it out
2) All the stuff previously in /usr/etc/inet or /etc/inet must be
in /etc now.
3) cfmakeraw () in ./libc-linux/posix/cfmakeraw.c is changed. If
you have problem with any communication applications, like
kermit and uucp, or something using cfmakeraw (), with the
new libc.a, please check it out first.
4) getopt_long () is changed. I undefined GETOPT_COMPAT in
./libc-linux/posix/getopt.c so that `+' cannot be used to
introduce a long-named option, like `--' because this is not
POSIX.2 compliant. As far as I know only those in
binutils.tar.z use `+' instead of `--'. Please get new
binutils.tar.z too. The source code, binutils-1.9l.tar.z, is in
pub/linux/packages/GCC/src.
5) get the latest tools-2.x.tar.z from pub/linux/packages/GCC/src
to fix the `+' bug.
6) in /libc-linux/misc/syslog.c, NUL is used as a message
delimiter. syslogd has to be changed to separate each message
from each other.
7) Please make sure there are no statfs.S statfs.S uname.S in
src/libc-linux/sysdeps/linux. Please do
cd src/libc-linux/sysdeps/linux
rm fstatfs.S statfs.S uname.S
since there are new fstatfs.c, statfs.c and uname.c.
8) This is an old one for libc 4.3.3. I included it here for you.
If you have problems with df and mount after installing this
release, please do:
1. Get Rick Sladkey's mount 0.99.6. It is in mount-0.99.6.tar.Z
and utile-1.4.src.tar.z from sunsite or tsx-11.
2. Remove any
rdev > /dev/mtab
from /etc/rc.
3. List / partition in /etc/fstab.
4. Add "mount -av" in /etc/rc or somewhere like that.
5. Always provide a fs name in /etc/fstab.
After rebooting, you will be fine.
9) The libg++ 2.3 doesn't compile out of box with gcc 2.4.0. I
hope the libg++ 2.4 will be out soon.
This release is compressed with gzip 1.0.3.
The file list:
1. inc-4.4.tar.z
The C/C++ header files for 4.4.
cd /usr
gzip -dc inc-4.4.tar.z | tar xvvof -
The header files in inc-4.4.tar.z are not complete. You have to
install the kernel source for the rest of the header files. Please
get the version mentioned at the beginning of this release note.
Suppose you install the kernel source at "/foo/bar/src",
you should do as root
mkdir -p /usr/include
cd /usr/include
ln -s /foo/bar/src/linux/include/asm .
ln -s /foo/bar/src/linux/include/linux .
2. libc-4.4.tar.z
Source code for 4.4.
cd src
gzip -dc libc-4.4.tar.z | tar xvvof -
3. libc-4.3.3-4.4.tar.z
Change of the source code from 4.3.3 to 4.4.
cd src
gzip -dc libc-4.3.3-4.4.tar.z | tar xvvof -
Please do
cd src/libc-linux/sysdeps/linux
rm fstatfs.S statfs.S uname.S
since there are new fstatfs.c, statfs.c and uname.c.
4. inc-4.3.3-4.4.tar.z
Change of the header files from 4.3.3 to 4.4.
cd /usr
gzip -dc inc-4.3.3-4.4.tar.z | tar xvvof -
5. image-4.4.tar.z
The static/stub libraries, shared image and crt0.o. To install
it, as root do
cd /tmp
rm -rf ./lib ./usr
gzip -dc image-4.4.tar.z | tar xvvof -
cp -av ./lib ./usr /
cd /lib
ln -sf libc.so.4.4 libc.so.4
ln -sf libm.so.4.4 libm.so.4
If you have an early version of libc.so.4.4 installed, you may have
to play with it, like
cd /lib
cp libc.so.4.4 /tmp/libc.so.4.4.old
ln -sf /tmp/libc.so.4.4.old libc.so.4
mv libc.so.4.4 old.libc.so.4.4
before you unpack image-4.4.tar.z.
6. extra-4.4.tar.z
libmcheck.a, libg.a, libc_p.a, libgmon.a and gcrt0.o. To install
cd /
gzip -dc extra-4.4.tar.z | tar xvvof -
7. ChangeLog
Change log for the Linux C library.
Please fix the file permissions after you install it.
H.J.
05/21/93