home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!ogicse!uwm.edu!wupost!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!organ.cis.ohio-state.edu!balasub
- From: balasub@organ.cis.ohio-state.edu (Krishna Balasubramanian)
- Newsgroups: comp.os.linux
- Subject: Re: Linux 0.97p2 compatibility, GCC/SHAREDLIBS/JUMPTABLES.
- Message-ID: <BALASUB.92Sep6121304@organ.cis.ohio-state.edu>
- Date: 6 Sep 92 17:13:04 GMT
- Article-I.D.: organ.BALASUB.92Sep6121304
- References: <k=pnyqq.genie@netcom.com>
- Sender: news@cis.ohio-state.edu (NETnews )
- Organization: Ohio State Computer Science
- Lines: 46
- In-Reply-To: genie@netcom.com's message of Sun, 06 Sep 92 05: 40:36 GMT
- Originator: balasub@organ.cis.ohio-state.edu
-
-
- GCC main releases, the corresponding linux version and some
- distributions that use this version of GCC are approximately
- as follows: (see the GCC FAQ to find out more).
-
- 1) 2.11c, May 19 linux 0.96 x11v1.0
- 2) 2.2.2, Jun 27 > linux 0.96ap4 rootdisk-0.97, x11v1.1, SLS, MCC-0.96c.
- 3) 2.2.2d Aug 12 > linux 0.97p1 rootdisk-0.97.1 , MCC-0.97p2
-
- There will probably be a new GCC version with X11 in a week or so.
-
- All these have shared libs which are incompatible with each other.
- So if a program wants to load a specific shared image from /lib
- you need to make sure the correct version exists or the program
- will not work. Binaries on archive sites ususally use on of these
- releases but there may be some made with intermediate ones.
- A static binary will work unless there is a change to the linux
- kernel that breaks it.
-
- Use ldd to determine what shared images a program depends on.
-
- If you use binaries that use many different shared libraries
- you'll lose in terms of efficiency but I haven't noticed that.
- If you use gcc with versions of the kernel that are very different
- from those above, you are likely to run into an occassional
- mysterious problem (see the GCC FAQ).
- I believe I've seen an occasional core dump on account of
- this too .... hard to say why with all these versions.
- The only serious problems are those with the latest linux kernel
- and gcc release! (well almost).
-
-
- JUMP TABLES:
- ~~~~~~~~~~~~
- 2.2.2d has jump tables but the linux mm underwent massive change
- so the jump tables major version has been changed.
- Whenever incompatible changes are made in the libraries,
- the major number of the library will change as in:
- libm.so.2.xx to libm.so.3.xx
- The next gcc release will have jump tables which will last for a few
- future releases. This means that with the new release you can make
- binaries which will work with the next few releases if linked with
- -jump instead of having to use -static.
-
-
- krishna
-