Results 1 to 2 of 2
A few questions here: 1. If I compile a program on a linux OS with a certain kernel version, what kernel versions will it run on? What rules do I ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
- 02-17-2009 #1
- Join Date
- Feb 2009
binary compatibility on Linux
1. If I compile a program on a linux OS with a certain kernel version, what kernel versions will it run on? What rules do I need to follow to ensure maximum binary compatability, and what is the best I can expect?
2. Same question for gnu C library. Is glibc normally dynamically linked, and if so, is it backwards compatible? Can you statically link it?
3. When distributing a binary, what stipulations are nomally made regarding kernel and glibc libraries?
Anything else I should know about binary compatibility?
- 02-17-2009 #2
- Join Date
- Jan 2006
Sounds like you're wanting to make a proprietary program for Linux? As everything you're asking wouldn't be a problem with free software.
You're more tied down by architecture than kernel or libc version, generally though you'll find that an application compiled on an older glibc will be fine on a newer glibc. It can vary alot with other libraries like gtk or qt, or some of the sound/video libraries around, depending on your application of course.
You can statically link if you wish, I know that Opera web browser is available statically or dynamically linked.
Things move fast in free software, and proprietary software has trouble keeping up with that. It can be done though, probably the best option would be something like the .run format, commonly used in commercial linux games, and video drivers, which to a certain extent compiles as it installs, this solves the problem completely.