Linux Question

I’ve been thinking about this for awhile. Can an application compiled on one linux distro run on a different linux distro? For example, if a program is compiled for Linux Ubuntu, will that program run on Fedora or Yellow Dog Linux?

I believe the answer is no, but I just wanted to make sure.

ummmm…well, it depends on how it is compiled. for example, downloading blender for linux from the official site is not for any particular linux distro, yet it runs…

Every Linux comes with Terminal so usually every program for Linux can usually run from Terminal… I think. and from RPM’s on distros like SuSe, Redhat, and DEB’s for distros like Ubuntu and Debian.

The main problem you would run in to is dependencies. Other than that, if it was compiled on Linux, it should run on any distro, and maybe even *BSD and Solaris.

The place where it you can run into problems, is say with Python. On Ubuntu the python version is 2.5, but some distro might ship with 2.4…

Other reasons it might no work is the changes each distro may have. Most of the time, the underlying system should be the same, but some distros rename some files or directories, which can cause problems.

Depends what versions of the dependency’s are installed, as everything on Linux is dynamically linked. I have borrowed programs out of Deb packages and used them on arch (when the package isnt available in the arch repo), without any major problems.

So long as that Distro supports the same dependency libraries that’s required. For example you compile a program on Ubuntu that requires SDL, for it to run on any other Distro it must also have SDL installed.

The only time when a program will not run on another distro is when the processor is completely different. For example if I compiled a program on a 64-bit processor the executable would not run on a 32-bit processor. This applies to all Operating Systems & processor architectures.