Linux.com

Clueless, so asking

Posted by: The Spoonman on November 04, 2005 03:30 AM
Okay, in non-programmer language can someone explain the upsides and noted downsides of the LSB? It was my understanding that the LSB was designed so that closed-software vendors can port their software to Linux and be assured that their software will run because a pre-defined set of pre-compiled binaries and libraries will be there. Why does the standard force me to install pre-compiled binaries on my system? I use LFS, so I don't want someone else's "base" binaries on my system. It kinda defeats the whole purpose of using LFS. Yes, I have to use someone else's precompiled, closed-source binaries on my system if I want to use a commercial app, but I can live with that as long as I'm clear what's running as the base system. I also install closed-source apps to their own folders in<nobr> <wbr></nobr>/opt like they're supposed to be so that they're isolated.



I guess it comes down to this: why specify pre-compiled bins and libs? Why can't they specify a "recipe" of how the components are compiled, which features are or are not activated (such as during a<nobr> <wbr></nobr>./configure step), and which dependancies must be in place prior to their compilation. If you do that, and the final binaries do not conform to the expected results, there's obviously something wrong somewhere. Shouldn't source compiled on my machine produce relatively similar (assuming gcc optimizations, etc) binaries on yours? If it doesn't, then the problem's the toolchain, right?



For example, if you compile Samba, and have PAM already installed, I believe configure will detect PAM and compile in support for it (I'm not saying Samba should be part of the LSB, just using it as an example. Also, I'm not sure if PAM detection is automatic for Samba, but some packages do activate various features automatically when it detects the required dependancies).



If you follow a pre-determined recipe for setting up a distro in this manner, for the most part pretty much everything should install and run just fine. I've never had any trouble running any commercial product (which includes biggies like Crossover Office 4.x, Vmware 5.0 and a few others) on my LFS-based system without a single LSB binary anywhere near the machine. But, then again, I'm pretty anal about making sure EVERY listed prerequisite be in place before compiling a package whether it's listed as required or optional. Disk space is cheap, why risk issues by not installing 100k of libs?


#

Return to Linux Standard Base approved as international standard