On Sat, 19 Jun 1999, Charles Camp wrote:
> Still stripping keepable data from this machine while waiting Linux
> stuff to come in and try install. I have been reading along to see
> what the general problems I may come up with on the Linux install
>
> Being totally ignorant about Linux and the assorted "distributions" I
> have began to wonder about something that maybe someone could
> enlighten me about and save me from making a bigger mess than I
> usually do when breaking new ground.
>
> Say ABC company has a distribution with kernel 1.2.3.4 and XYZ company
> has a distribution with the same kernel. On the distribution CDs each
> company has different "optional" programs such as word manipulators,
> e-mail, usenet, web browsers etc.
I hate to be the one to tell you this. There is another variable.
Virtually all applications relate to the kernel using a libc, and there
are 2 libc's in common use: libc5, and libc6 AKA glibc-2. An
executable that expects libc5 will not run on a system that has only
libc6, and vice-versa. However, it is possible to have both libraries
with the same kernel, and most systems do. You must take care not to
mix executabkes with different libc's in the same run-unit. There is
pretty good version-control built in to the linker and dynamic-linker,
and normally this is not a problem, but it is possible to defeat it.
Most distros (possibly all) use libc6 as primary library now, so this
whole bag of worms is on its way out.
> Would the programs from one company run on the system set up with the
> other companies distribution and installation assuming the kernels
> were the same version number?
Yes, given the same major libc version. In fact, my system started life
as slackware libc5, but I have installed so many RedHat packages on it I
call it SlackHat. The first one I installed was libc6, which I use as
primary software development library.
>
> Is there any effort to make the newer kernel "backward compatible"
> with previous kernels? As would a program written for kernel 1.2.0.0
> "probably" (maybe "should") run on kernel 1.2.3.4?
>
A generic posix application written for kernel 1.2.0 can compile and run
with kernel 2.2.10. Within the same major kernel revision number, the
intent is for absolute backward compatibility. A binary that runns with
kernel 2.0.0 should work with 2.0.37. If it is a system utility, it may
not work with kernel 2.2.0. That's why we change major version numbers.
> I have noted that various "commercial distribution packages" each
> extol the super greatness of their individual package. Within the
> trade is there a tendency for each company the "quirk" their
> distribution so that only their distributed programs will work on that
> installation and work only with that distribution or would the
> software be easily transportable?
I don't think you will find any intentional incompatibilities with linux
distributions. It is in the interest of any distributor to make his
packages work on _my_ system, whatever it may happen to be, so when I
decide to upgrade it, I might be inclined to buy his distribution. The
real difference is that the source is freely available, so if I don't
like it I can make my own version, and make it freely available. The
only downside is that there will never be a definitive linux
distribution. You will never be able to say, this, and only this, is
linux.
Each of the distributors of linux works very hard to make his distro the
best. They aint none of them perfect, but each one is better than
anything microsoft has to offer.
You can take software from any *nix, and try to compile and run it on
linux. If it doesn't work, ask on linux-newwbie, or linux-gcc, and
probably someone will help you.
>
> Thank you for any enlightenment you may offer.
>
>
>
> Charles Camp
> [EMAIL PROTECTED]
>
___________________________________________________________________
Get the Internet just the way you want it.
Free software, free e-mail, and free Internet access for a month!
Try Juno Web: http://dl.www.juno.com/dynoget/tagj.