home *** CD-ROM | disk | FTP | other *** search
- NOTE: If you miss ONE LINE in this documentation, this library may not
- work for you.
-
- Hi, Guys,
-
- This is the public release of the Linux C library 4.5.26. You have to
- run the kernel and install the source code of 1.0 or above to
- use all the features in it. You also need gcc 2.5.8 or above to use it.
-
- This release fixed a few major bugs. There are some other changes I like
- to see in the next public release. I suggest not to use the shared version
- of math, gdbm, curses and termcap since they will go away in the next release.
- Please remove libm.sa, libcurses.sa, libdbm.sa and libtermcap.sa in
- /usr/lib after the new libraries are installed.
-
- The new locale may still not work very well for non-English languanges.
- I don't know when it will be improved.
-
- If your kernel is older than specified, you should install libc 4.5.26
- as well as the suitable gcc to compile the new kernel with them first.
- While compiling the new kernel, your system should have as few
- processes running as possible since some of them may be broken with
- libc 4.5.26 and the old kernel. FYI, the compiler itself should work
- with 0.99 pl 13 or above.
-
- You can get this package under pub/linux/packages/GCC from
- tsx-11.mit.edu. The file names are inc-4.5.26.tar.gz,
- inc-4.5.21-4.5.26.tar.gz, libc-4.5.26.tar.gz, libc-4.5.21-4.5.26.tar.gz,
- image-4.5.26.tar.gz and extra-4.5.26.tar.gz.
-
- In linux-binutils-1.0.tar.gz, there are a new ar, a new ld with
- QMAGIC support, GNU make 3.70 and gas 2.2l. The source codes are under
- pub/linux/packages/GCC/src. You need to do
-
- cd /usr/bin
- rm ld as
-
- before untar linux-binutils-1.0.tar.gz under /. Otherwise, the
- symbolic links may fail.
-
- I only make i486 binary versions this time.
-
- WARNING: PLEASE READ THEM OR DONT USE THIS LIBRARY.
- 1) There are some massive changes to Makefiles and the file
- structures. Now you can do:
-
- ./configure
- make
- make install
-
- to get everything compiled and installed. Please check it out.
-
- There is some primitive support for m68k. Someone has to fill
- the missing files.
-
- There are some bugs in gnu make 3.62 which prevents the
- successfull compliation. Please use gnu make 3.70 or above
- instead. I included one in binutils-1.9l.3-as-2.2l.tar.gz.
- 2) The Linux C library 4.5.8 is very strict. It won't tolerate
- any bugs in your applications. So it has exposed the
- "fclose on the same file pointer twice" bugs in mailx
- and pdksh. If you find something is wrong when using libc
- 4.5.8, please recompile it with -g and run gdb on it. You
- should set break points in _IO_fclose () and _IO_fopen (),
- then check if _IO_fclose () is called twice on the same
- file pointer.
-
- In 4.5.26, I tried to relax the stdio a little bit. "fclose on
- the same file pointer twice" may work if the memory used by
- the file pointer does not happen to have a valid stdio
- signature. Please check it out. But I discourage this practice.
- 3) In this release, iostream is removed from the Linux C library.
- That means all the previous C++ binaries using iostream linked
- with the shared library will break.
- 4) /usr/lib/libgcc.sa and /usr/lib/libgcc.a must not be used with
- libc 4.5.26. You have to remove/backup /usr/lib/libgcc.*.
- 5) All binaries using "long long" output in iostream linked with
- the shared library may be broken.
- 6) inet_network () returns the network number and treats the
- network address as
-
- a.b.c.d (with each treated as 8-bits)
- a.b.c (with each treated as 8-bits)
- a.b (with each treated as 8 bits)
- a (with a treated as 8 bits)
- 7) xdm may be miscompiled by early gcc. If it doesn't work with
- this libc. Try to recompile it with gcc 2.5.x (x >= 7) or
- contact Dave_Boyd@Sterling.COM for a working binary.
- 8) You need tools 2.10 to make the shared library, which can be
- ftped from tsx-11.mit.edu under pub/linux/packages/GCC/src.
- 9) ld.so 1.4.3 or above is also required by this release. It is on
- tsx-11.mit.edu under pub/linux/packages/GCC.
- 10) _PATH_LASTLOG, _PATH_MAILDIR and WTMP_FILE have bee moved from
- /usr to /var. _PATH_SENDMAIL is changed to /usr/sbin/sendmail.
- be sure you make the appropriate symbolic links.
-
- You need to link /var/adm/utmp with /etc/utmp, /var/adm/lastlog
- with /etc/lastlog, /var/spool/mail with /usr/spool/mail, maybe
- /usr/lib/sendmail with /usr/sbin/sendmail.
- 11) I am testing rx 0.03 from sed 2.03 used to replace regex 0.12.
- You have to recompile your applications to take the advantage
- of the fast regex. The old applications should work fine with
- the old regex in the shared image.
-
- Rx 0.03 is too buggy. I have sent an email to the author asking
- for new version. At the same time, the old GNU regex 0.12 is
- restored.
- 12) Please remove /usr/include/shadow.h if you don't use the shadow
- password. I will try to add the shadow stuff after 4.5.xx
- 13) A stdio bug is fixed. For fgets (), the buffer will be
- unchanged and NULL is returned when the EOF is seen. Before
- that, the buffer was terminated by the null char, which
- violates the ANSI C standard. But some programs may rely on
- that bug.
- 14) libm.so.x.y is moved to /usr/lib. Please clean up /lib.
- 15) A new system call, getpgid (), is added. It requries the
- kernel 0.99 pl 15 or above.
- 16) There is a new obstack.[hc]. Please check if it breaks any old
- binaries compiled with old obstack.h.
- 17) You have to remove "#include <linux/unistd.h>" from
- <linux/timex.h> if it in there.
- 18) Please check locale/*/Makefile for how to install the new
- locale stuff. I expect it will change.
- 19) I changed login/getlogin.c and posix/cuserid.c. I hope they
- don't break anything.
-
-
- This release is compressed with gzip 1.2.4.
-
- Please read ChangeLog for details of the bug fixes and changes.
-
- The file list:
-
- 1. inc-4.5.26.tar.gz
-
- REQUIRED. It is the header files for 4.5.26.
-
- cd /
- rm /usr/include/regex.h /usr/include/rx.h
- gzip -dc inc-4.5.26.tar.gz | tar xvvSof -
- # Please be careful, I don't know what you have under /usr/include.
- # If you have a problem with the header files, you may do
- # rm -rf /usr/include
- # mkdir -p /usr/include
- # before
- # gzip -dc inc-4.5.26.tar.gz | tar xSvvof -
-
- The header files in inc-4.5.26.tar.gz 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
-
- cd /usr/include
- ln -s /foo/bar/src/linux/include/asm .
- ln -s /foo/bar/src/linux/include/linux .
-
- Since some programs need <linux/autoconf.h>, you may have to do
-
- cd /foo/bar/src/linux
- make config
-
- before you can compile them.
-
- 2. inc-4.5.21-4.5.26.tar.gz
-
- Change of the header files from 4.5.21 to 4.5.26.
-
- cd /
- rm -f /usr/include/regex.h /usr/include/rx.h
- gzip -dc inc-4.5.21-4.5.26.tar.gz | tar xSvvof -
-
- 3. libc-4.5.26.tar.gz
-
- Source code for 4.5.26.
-
- cd src
- rm -rf libc-linux
- gzip -dc libc-4.5.26.tar.gz | tar xSvvof -
-
- 4. libc-4.5.21-4.5.26.tar.gz
-
- Change of the source code from 4.5.21 to 4.5.26.
-
- cd src
- gzip -dc libc-4.5.21-4.5.26.tar.gz | tar xSvvof -
- cd libc-linux
- rm -rf gmon
-
- 5. image-4.5.26.tar.gz
-
- REQUIRED. The stub/static libraries and the shared images. To
- install it, as root do
-
- cd /tmp
- rm -rf ./lib
- gzip -dc image-4.5.26.tar.gz | tar xSvvof -
- cp -av ./lib ./usr /
- ldconfig -v
-
- 6. extra-4.5.26.tar.gz
-
- REQUIRED. libmcheck.a, libg.a, libc_p.a, libgmon.a and gcrt0.o. To
- install
-
- cd /
- gzip -dc extra-4.5.26.tar.gz | tar xSvvof -
-
- 7. ChangeLog
-
- Change log for the Linux C library.
-
- Please fix the file permissions/ownerships after you install it.
-
-
- H.J.
- hjl@nynexst.com
- 05/20/94
- ----
- Mon Apr 4 15:24:19 1994 H.J. Lu (hlu@fudan)
-
- * version 4.5.26 is released.
-
- * jump/libm/jump.params:
- * jump/libc.lite/jump.params:
- * jump/libc/jump.params: bump up to version 4.5.26.
-
- * <_G_config.h>: update verion to 4.5.26.
-
- Mon Apr 4 14:49:33 1994 Nickolay Saukh (nms@ussr.EU.net)
-
- * locale/setlocale.c: new.
-
- * locale/collate:
- * locale/ctype:
- * locale/monetary:
- * locale/numeric:
- * locale/response:
- * locale/time: new.
-
- Mon Apr 4 13:49:33 1994 H.J. Lu (hlu@fudan)
-
- * Makeconfig: add CHARFLAGS=-funsigned-char.
-
- * <paths.h>: define _PATH_LOCALE as "/usr/lib/locale".
-
- * posix/cuserid.c: use getlogin () for multiply names with
- the same id.
-
- * login/getlogin.c: add check for fd 1 and 2.
-
- * <unistd.h>: add ctermid ().
-
- * posix/ctermid.c: include <unistd.h>.
-
- * <utmp.h>: fix typo in ut_host [UT_NAMESIZE]. It should be
- ut_host[UT_HOSTSIZE].
-
- * Makeconfig (NLSCFLAGS): add -I$(TOPDIR)/nls.
-
- * <netinet/in_systm.h>: renamed from <netinet/in_system.h>.
-
- * nls/nl_types.h: removed.
-
- * ./libio/ioperror.c:
- * ./bsd/psignal.c:
- * ./posix/getopt.c:
- * ./string/strerror.c:
- * ./string/strsignal.c:
- * ./rpc/svc_au_ux.c:
- * ./rpc/get_myaddr.c:
- * ./rpc/pmap_getmaps.c:
- * ./rpc/svc_run.c:
- * ./rpc/pmap_clnt.c:
- * ./rpc/xdr_ref.c:
- * ./rpc/svc_simple.c:
- * ./rpc/xdr_array.c:
- * ./rpc/clnt_perror.c:
- * ./rpc/clnt_raw.c:
- * ./rpc/auth_unix.c:
- * ./rpc/svc_tcp.c:
- * ./rpc/pmap_rmt.c:
- * ./rpc/xdr.c:
- * ./rpc/clnt_tcp.c:
- * ./rpc/svc_udp.c:
- * ./rpc/xdr_rec.c:
- * ./rpc/clnt_udp.c:
- * ./inet/gethstnmad.c:
- * ./inet/herror.c:
- * ./inet/rcmd.c:
- * ./inet/rexec.c:
- * ./inet/ruserpass.c: change
-
- #include "../nls/nl_types.h"
-
- to
-
- #include "nl_types.h"
-
-
- Sat Mar 26 14:10:17 1994 H.J. Lu (hlu@fudan)
-
- * version 4.5.25 is released.
-
- * login/getlogin.c: don't include "pathnames.h".
-
- * jump/libc/jump.funcs:
- * jump/libc.lite/jump.funcs: fix a typo.
-
- * libbsd/logout.c:
- * libbsd/logwtmp.c: include <utmp.h>.
-
- * <lastlog.h>: copied/modified from <bsd/utmp.h>.
-
- * <utmp.h>: include <paths.h>.
-
- * <bsd/utmp.h>: removed.
-
- * time/strftime.c: "%j" should print the day of the yera in the
- range from 001 to 366.
-
- * Makefile (DIRS):
- * sysdeps/linux/Makefile (lib all):
- * sysdeps/linux/i386/Makefile (lib all):
- * sysdeps/linux/m68k/Makefile (lib all): check MATH.
-
- * misc/syslog.c (openlog): use sizeof(SyslogAddr) -
- sizeof(SyslogAddr.sa_data) + strlen(SyslogAddr.sa_data) for
- the address size.
- (vsyslog): close the log when write () fails. it will try
- to reconnect it next time.
-
- * nls/msgcat.c (catclose):
- * <nl_types.h> (catclose): change return from void to int.
-
- * login/getlogin.c: check USER_PROCESS.
-
- * <m68k/syscall.h>:
- * sysdeps/linux/m68k/sysdep.h: fix a m68k bug. from
- "hamish (h.i.) macdonald" <hamish@bnr.ca>.
-
- * jump/libm/jump.params:
- * jump/libc.lite/jump.params:
- * jump/libc/jump.params: bump up to version 4.5.25.
-
- * <_G_config.h>: update verion to 4.5.25.
-
- * sysdeps/linux/i386/math/atanh.c: check x == -1.0. from
- "James H. Cloos Jr." <cloos@rahul.net>.
-
- * login/getlogin.c: undo the change of Fri Mar 11.
-
- Fri Mar 18 13:35:20 1994 flebbe@pluto.tat.physik.uni-tuebingen.de (Olaf Flebbe)
-
- * <math.h>: add cbrt ().
- (__finite): check __isnan ().
-
- * sysdeps/linux/i386/math/cbrt.c: new from SUN libm.
-
- * sysdeps/linux/i386/math/Makefile (SRC1S): add cbrt.c.
-
- * jump/libm/jump.funcs: add _cbrt.
-
- Fri Mar 11 15:00:58 1994 H.J. Lu (hlu@fudan)
-
- * version 4.5.24 is released.
-
- * jump/libm/jump.params:
- * jump/libc.lite/jump.params:
- * jump/libc/jump.params: bump up to version 4.5.24.
-
- * <_G_config.h>: update verion to 4.5.24.
-
- * Makerules: fix typos.
-
- * jump/libc/Makefile (install):
- * jump/libm/Makefile (install): move the old shared library to
- backup/$SHLIB_FILE.$$.
-
- * login/getlogin.c: call getpwnam(name). from Mitchum DSouza
- <m.dsouza@mrc-applied-psychology.cambridge.ac.uk>.
-
- * sbin/lib/i386/Makefile:
- * sbin/lib/m68k/Makefile:
- * sbin/lib/Makefile:
- * sysdeps/linux/Makefile:
- * jump/Makefile:
- * sbin/Makefile:
- * sysdeps/Makefile:
- * Maketargets: Use $(MAKE) -C $$i $@.
-
- * Makefile (install.static): delete __.SYMDEF from libc.a.
- (install.debug): delete __.SYMDEF from libg.a.
- (install.profile): delete __.SYMDEF from libc_p.a.
-
- * jump/libc/Makefile (JUMP_PARAMS):
- * jump/libc.lite/Makefile (JUMP_PARAMS):
- * jump/libm/Makefile (JUMP_PARAMS): change that to
- $(JUMP_DIR)/jump.params.
-
- * jump/libc/jump.params.build:
- * jump/libc.lite/jump.params.build:
- * jump/libm/jump.params.build: removed.
-
- Thu Mar 10 09:14:39 1994 H.J. Lu (hlu@fudan)
-
- * ./sysdeps/linux/i386/Makefile $(DIRS): don't add
- "math crt" if LITE is "true".
-
- * <waitflags.h>: for linux, only include <linux/wait.h>.
-
- * <netinet/ip_tcp.h>: include <linux/socket.h>.
-
- * <sys/debugreg.h>: include <linux/debugreg.h>.
-
- * Makeconfig: fix a typo.
-
- * jump/libc.lite/jump.funcs (_syscall):
- * jump/libc/jump.funcs (_syscall): mark it "T".
-
- * <syscall.h>: change __syscall back to syscall.
-
- * ./sysdeps/linux/i386/Makefile $(SRC3S): change __syscall.S
- to syscall.S.
-
- * ./sysdeps/linux/i386/__syscall.S: removed.
-
- * ./sysdeps/linux/i386/syscall.S: new file.
-
- Sun Mar 6 21:52:39 1994 H.J. Lu (hlu@fudan)
-
- * version 4.5.23 is released.
-
- * jump/libm/jump.params:
- * jump/libm/jump.params.build:
- * jump/libc.lite/jump.params:
- * jump/libc.lite/jump.params.build:
- * jump/libc/jump.params:
- * jump/libc/jump.params.build: bump up to version 4.5.23.
-
- * <_G_config.h>: update verion to 4.5.23.
-
- * Makeconfig (TARGET_LIBM_SO_DIR): change back to /lib.
-
- * ./libio/ChangeLog: new entries.
-
- * ./sysdeps/linux/i386/libc_exit.c: fixed for PIC.
-
- * ./sysdeps/linux/i386/Makefile $(SRC3S): add __syscall.S.
-
- Sat Mar 5 16:55:09 1994 H.J. Lu (hlu@fudan)
-
- * version 4.5.22 is released.
-
- * jump/libm/jump.params:
- * jump/libm/jump.params.build:
- * jump/libc.lite/jump.params:
- * jump/libc.lite/jump.params.build:
- * jump/libc/jump.params:
- * jump/libc/jump.params.build: bump up to version 4.5.22
-
- * <_G_config.h>: update verion to 4.5.22.
-
- * ./libio/ChangeLog: new entries.
-
- * stdlib/exit.c (exit): call _IO_flush_all directly if
- __PIC__ or __pic__ is defined.
-
- * <gnu-stabs.h> (HAVE_GNU_LD): don't define it if __PIC__
- or __pic__ is defined.
-
- * rpc/get_myaddr.c: change "#ifdef linux" to "#if 0".
-
- * jump/libc.lite/jump.funcs (_syscall):
- * jump/libc/jump.funcs (_syscall): mark it "U".
-
- * <syscall.h>: change syscall to __syscall.
-
- * <sys/ipc.h> (__ipc): new.
-
- * ./sysdeps/linux/Makefile $(SRC2S): add __ipc.S.
-
- * ./sysdeps/linux/__ipc.S: new file.
-
- * ./sysdeps/linux/msgctl.c:
- * ./sysdeps/linux/msgget.c:
- * ./sysdeps/linux/msgrcv.c:
- * ./sysdeps/linux/msgsnd.c:
- * ./sysdeps/linux/semctl.c:
- * ./sysdeps/linux/semget.c:
- * ./sysdeps/linux/semop.c:
- * ./sysdeps/linux/shmat.c:
- * ./sysdeps/linux/shmctl.c:
- * ./sysdeps/linux/shmdt.c:
- * ./sysdeps/linux/shmget.c: use __ipc ().
-
- * ./sysdeps/linux/i386/Makefile (SRC1S): remove syscall.c.
- $(SRC3S): add __syscall.S.
-
- * ./sysdeps/linux/i386/__syscall.S: new file.
-
- * ./sysdeps/linux/i386/__ioctl.c:
- * ./sysdeps/linux/i386/__fcntl.c:
- * ./sysdeps/linux/i386/__open.c:
- * ./sysdeps/linux/i386/syscall.c: removed.
-
- * ./sysdeps/linux/__adjtime.c:
- * ./sysdeps/linux/__ntpgttm.c: don't include <sys/syscall.h>,
- include <syscall.h>.
-
- * <demangle.h>: new for cplus_demangle ().
-
- * Makefile:
- * Makeconfig:
- * Makerules:
- * Maketargets: add PIC from Mitchum DSouza
- <Mitchum.Dsouza@mrc-applied-psychology.cambridge.ac.uk>.
-
- Tue Mar 1 14:37:46 1994 Matthias Urlichs <urlichs@smurf.noris.de>
-
- * inet/res_send.c (res_send): if sethostent(1) has been called,
- the resolver opens a TCP connection to the nameserver. If a
- request is interrupted by a signal and we're longjmp()ing
- out, that connection goes out of sync. Ugh.
-
- Solution: If that happens, the connection should be closed
- and reopened. Flushing residual data might be an alternate
- idea except that the server might not have answered by the
- time we're trying the next request.
-
- Sat Feb 26 14:01:18 1994 H.J. Lu (hlu@nighthawk)
-
- * version 4.5.21 is re-released :-(.
-
- * ./sysdeps/linux/i386/gmon: moved from ./gmon.
-
- * ./sysdeps/linux/i386/gmon/Makefile (TOPDIR): change it to
- "../../../..".
-
- * ./sysdeps/linux/i386/Makefile (DIRS): add "gmon" if PROFILE ==
- true.
-
- * ./gmon: moved to ./sysdeps/linux/i386.
-
- * ./Makefile (CLEAN_DIRS):
- (DIRS): remove "gmon".
-
-