261 lines
9.3 KiB
Plaintext
261 lines
9.3 KiB
Plaintext
This is a testing release until it is announced on comp.os.linux.
|
|
|
|
PLEASE DON'T LINK ANY SYSTEM UTILITIES IF THIS IS A TESTING RELEASE.
|
|
PLEASE DON'T LINK ANY SYSTEM UTILITIES IF THIS IS A TESTING RELEASE.
|
|
PLEASE DON'T LINK ANY SYSTEM UTILITIES IF THIS IS A TESTING RELEASE.
|
|
PLEASE DON'T LINK ANY SYSTEM UTILITIES IF THIS IS A TESTING RELEASE.
|
|
PLEASE DON'T LINK ANY SYSTEM UTILITIES IF THIS IS A TESTING RELEASE.
|
|
PLEASE DON'T LINK ANY SYSTEM UTILITIES IF THIS IS A TESTING RELEASE.
|
|
PLEASE DON'T LINK ANY SYSTEM UTILITIES IF THIS IS A TESTING RELEASE.
|
|
|
|
If it has been announced on comp.os.linux, it can used for anything.
|
|
If it has been announced on comp.os.linux, it can used for anything.
|
|
If it has been announced on comp.os.linux, it can used for anything.
|
|
If it has been announced on comp.os.linux, it can used for anything.
|
|
If it has been announced on comp.os.linux, it can used for anything.
|
|
|
|
This release only runs under Linux 0.96c or above.
|
|
This release only runs under Linux 0.96c or above.
|
|
This release only runs under Linux 0.96c or above.
|
|
This release only runs under Linux 0.96c or above.
|
|
This release only runs under Linux 0.96c or above.
|
|
|
|
This release only works with Linux 0.97 patch 1 or above.
|
|
This release only works with Linux 0.97 patch 1 or above.
|
|
This release only works with Linux 0.97 patch 1 or above.
|
|
This release only works with Linux 0.97 patch 1 or above.
|
|
This release only works with Linux 0.97 patch 1 or above.
|
|
This release only works with Linux 0.97 patch 1 or above.
|
|
This release only works with Linux 0.97 patch 1 or above.
|
|
|
|
You need to have the header files from virgin Linux kernel 0.97 patch 1
|
|
or above on line to use this release.
|
|
|
|
You need to have the header files from virgin Linux kernel 0.97 patch 1
|
|
or above on line to use this release.
|
|
|
|
You need to have the header files from virgin Linux kernel 0.97 patch 1
|
|
or above on line to use this release.
|
|
|
|
You need to have the header files from virgin Linux kernel 0.97 patch 1
|
|
or above on line to use this release.
|
|
|
|
Please read all the previous release notes and docs. This release note
|
|
only covers the new stuffs.
|
|
|
|
This is gcc 2.2.2d for Linux. It is on tsx-11.mit.edu and
|
|
fgb1.fgb.mw.tu-muenchen.de under /pub/linux/GCC.
|
|
|
|
The source codes for gcc itself is unchanged from 2.2.2, but it was
|
|
recompiled for new kernel. And lots of bugs are fixed.
|
|
|
|
I am trying to make the Linux C library to be POSIX.1 compliant. I
|
|
cleared up the header files and some library functions.
|
|
|
|
1. <limits.h> and <unistd.h> are fixed. (in 2.2.2dmisc.tar.Z)
|
|
2. <time.h> is fixed, remove __tzname_max (). (in 0.97pl1inc.tar.Z)
|
|
3. posix/sysconf.c. (the shared image is compiled with old one. I
|
|
don't think it will matter too much. this will be fixed in the
|
|
next release.)
|
|
4. time/Makefile (remove tzname.o)
|
|
|
|
There are some problems with pathconf()/fpathconf(). We need a new
|
|
sys call to get info about the filesystem. Someone mentioned
|
|
vfsstat (). It may be a good idea. To be compliance with POSIX.1, we
|
|
need
|
|
|
|
1. LINK_MAX
|
|
2. MAX_CANON
|
|
3. NAME_MAX
|
|
4. PATH_MAX
|
|
5. PIPE_BUF
|
|
6. _POSIX_CHOWN_RESTRICTED
|
|
7. _POSIX_NO_TRUNC
|
|
8. _POSIX_VDISABLE
|
|
|
|
Some of them may change for different filesystems. Some don't. Some may
|
|
do in the future.
|
|
|
|
The installation procedure is changed. Please read README first.
|
|
|
|
READ README FIRST
|
|
READ README FIRST
|
|
READ README FIRST
|
|
READ README FIRST
|
|
READ README FIRST
|
|
READ README FIRST
|
|
READ README FIRST
|
|
READ README FIRST
|
|
READ README FIRST
|
|
READ README FIRST
|
|
|
|
PLEASE RUN `install.2.x'
|
|
PLEASE RUN `install.2.x'
|
|
PLEASE RUN `install.2.x'
|
|
PLEASE RUN `install.2.x'
|
|
PLEASE RUN `install.2.x'
|
|
PLEASE RUN `install.2.x'
|
|
|
|
The list of known bugs.
|
|
|
|
1. in some very rare cases, stdio may be broken, like on modem, pipe. I
|
|
am not sure if it is the stdio's fault. It seems that somehow
|
|
iostream tries to do a seek on those files. We are investigating it
|
|
now. We need all the help we can get. Please get libc-2.2.2d.tar.Z
|
|
and try this
|
|
|
|
gcc -g -o foo foo.c
|
|
|
|
and run gdb on this. Please pay attention to field `_flags'. We need
|
|
to know some details right before and after `core dump'.
|
|
|
|
Oops: This one turned out not a bug. Of course, we can even do
|
|
better. But why? Here is what man says
|
|
|
|
---------------------------
|
|
When a file is opened for update, both input and output can be done
|
|
on the resulting stream. However, output cannot be directly followed
|
|
by input without an intervening call to the fflush function or to a
|
|
file positioning function (fseek, fsetpos, or rewind), and input
|
|
cannot be directly followed by output without an intervening call to
|
|
a file positioning function unless the input operation encounters
|
|
end-of-file.
|
|
--------------------------
|
|
|
|
IMPORTANT NOTE:
|
|
IMPORTANT NOTE:
|
|
IMPORTANT NOTE:
|
|
IMPORTANT NOTE:
|
|
IMPORTANT NOTE:
|
|
|
|
The new correct setjmp/longjmp are not compatible with gcc 2.2.2. If
|
|
your code uses them, please recompile it with gcc 2.2.2d. And
|
|
|
|
DO NOT USE setjmp/longjmp WITH THE SHARED X386 v1.1, WAIT FOR v2.0.
|
|
|
|
Another solution is before you install gcc 2.2.2d, please do
|
|
|
|
cp /usr/include/setjmp.h /usr/lib/gcc-lib/i386-linux/2.2.2/include
|
|
|
|
The following bugs in libraries are fixed.
|
|
|
|
1. div/ldiv.
|
|
2. setjmp/longjmp.
|
|
3. crt0.o/gcrt0.o. 387 control word is changed to 0x1272. No overflow
|
|
exception.
|
|
4. floating point format errors are fixed.
|
|
5. minor bug in mntent.c.
|
|
6. popen.o is fixed in libg.a.
|
|
7. fopen ("foo", "a") will seek to the end of file.
|
|
8. printf ("%10.2f\n", 10.0);
|
|
9. libg++.a 2.2 is used.
|
|
10. libinet.a is folded into libc.a. All the data bases are in
|
|
/usr/etc/inet. But you need kernel support for that. Please
|
|
contact "bir7@leland.stanford.edu" first.
|
|
11. a typo in libc-linux/socket/bytedorer.c is fixed.
|
|
12. size of args + envs for exec () is fixed.
|
|
13. new mount for 0.97.
|
|
14. a bug in temporary filename creation is fixed. Now it checks
|
|
if a process has permission to create a file in specified directory.
|
|
15. in libhard.a, pow (0.0, 0.0) = 1.0 now.
|
|
16. cc1/cc1plus is fixed for
|
|
double foo=DBL_MAX;
|
|
|
|
The following functions are added to libraries.
|
|
|
|
1. setpiority/getpiority.
|
|
2. iopl.
|
|
3. sigsetjmp/siglongjmp.
|
|
4. cfree.
|
|
|
|
The following changes are made to the header files.
|
|
|
|
1. <stddef.h> is fixed.
|
|
2. <stdlib.h> is fixed.
|
|
3. all the header files are now compatible with gcc -traditional.
|
|
4. strncasecmp is added to <string.h>.
|
|
5. <sys/asy.h> is added.
|
|
6. lots of bugs are fixed.
|
|
7. <sys/user.h> and <a.out.h> are changed.
|
|
8. <sys/socket.h> and <fcntl.h> are changed for TCP/IP.
|
|
9. <sys/syslog.h> and <sgtty.h> are in for TCP/IP.
|
|
10. lots of header files in kernel and /usr/include are fixed.
|
|
|
|
You won't notice the changes unless you are testing TCP/IP. If you
|
|
are, please first contact "bir7@leland.stanford.edu". You need more
|
|
than that.
|
|
|
|
YOU HAVE TO RECOMPILE GDB 4.6 WITH GCC 2.2.2d.
|
|
YOU HAVE TO RECOMPILE GDB 4.6 WITH GCC 2.2.2d.
|
|
YOU HAVE TO RECOMPILE GDB 4.6 WITH GCC 2.2.2d.
|
|
YOU HAVE TO RECOMPILE GDB 4.6 WITH GCC 2.2.2d.
|
|
YOU HAVE TO RECOMPILE GDB 4.6 WITH GCC 2.2.2d.
|
|
YOU HAVE TO RECOMPILE GDB 4.6 WITH GCC 2.2.2d.
|
|
YOU HAVE TO RECOMPILE GDB 4.6 WITH GCC 2.2.2d.
|
|
YOU HAVE TO RECOMPILE GDB 4.6 WITH GCC 2.2.2d.
|
|
|
|
8. two dummies, <sys/reg.h> and <machine/reg.h> are added for gdb 4.6.
|
|
|
|
The following changes are made to libraries.
|
|
|
|
1. byte order functions for networking are written in C. Please read
|
|
libc-linux/socket/byteorder.c and <netinet/in.h>
|
|
|
|
David's jump table version 2 release 2.1 is in. Please read
|
|
|
|
/usr/lib/gcc-lib/i386-linux/2.2.2d/jump/README.
|
|
|
|
Now there is only one version of shared images, used both by jump table
|
|
and non jump table.
|
|
|
|
The following files are changed since 2.2.2/2.2.2b.
|
|
|
|
1. 2.2.2ddb.tar.Z (libg.a, libc_p.a and jump stable stuffs)
|
|
2. 2.2.2dmisc.tar.Z (cpp, eader files, drivers, libs, doc, ....)
|
|
3. 2.2.2dlib.tar.Z (cc1, cc1plus)
|
|
4. shlib-2.2.2d.tar.Z (making the shared libs for gcc 2.2.2)
|
|
5. libc-2.2.2d.tar.Z (source code for the libs)
|
|
6. 0.97pl1inc.tar.Z (the header files also used by kernel source 0.97
|
|
patch 1)
|
|
7. binutils.tar.Z (all new stuffs, compiled with jump table)
|
|
8. install.2.x (a new script for installing gcc 2.2.2d)
|
|
9. README (installation instruction)
|
|
10. FAQ (gcc under Linux)
|
|
11. 2.2.2dg1.tar.Z (libg.a compiled with -g1 to get a smaller libg.a)
|
|
12. gas-src.tar.Z (source code for gas-1.38.1)
|
|
13. binutils-src.tar.Z (source code for ar, gprof, ld, nm, objdump,
|
|
ranlib, size and strip)
|
|
|
|
At least you need to get and install 2.2.2ddb.tar.Z, 2.2.2dmisc.tar.Z
|
|
and 0.97inc.tar.Z.
|
|
|
|
File list:
|
|
|
|
1. 2.2.2ddb.tar.Z (libg.a, libc_p.a and jump stable stuffs)
|
|
2. 2.2.2dmisc.tar.Z (cpp, eader files, drivers, libs, doc, ....)
|
|
3. 2.2.2dlib.tar.Z (cc1, cc1plus)
|
|
4. shlib-2.2.2d.tar.Z (making the shared libs for gcc 2.2.2)
|
|
5. libc-2.2.2d.tar.Z (source code for the libs)
|
|
6. 0.97pl1inc.tar.Z (the header files also used by kernel source 0.97
|
|
patch 1)
|
|
7. binutils.tar.Z (all new stuffs, compiled with jump table)
|
|
8. install.2.x (a new script for installing gcc 2.2.2d)
|
|
9. README (installation instruction)
|
|
10. FAQ (gcc under Linux)
|
|
11. 2.2.2dg1.tar.Z (libg.a compiled with -g1 to get a smaller libg.a)
|
|
12. gas-src.tar.Z (source code for gas-1.38.1)
|
|
13. binutils-src.tar.Z (source code for ar, gprof, ld, nm, objdump,
|
|
ranlib, size and strip)
|
|
14. gcc-2.2.2d.tar.Z (patches for compiling gcc 2.2.2d, same as
|
|
gcc-2.2.2.tar.Z)
|
|
|
|
There may be some bugs in binutils-src.tar.Z. Please report it if you
|
|
find any.
|
|
|
|
To use 2.2.2dg1.tar.Z, you should unpack it by hand under /lib after
|
|
you have run `install.2.x' since it just overwrites libg.a.
|
|
|
|
H.J.
|
|
hlu@eecs.wsu.edu
|
|
08/12/92
|