Slashdot Mirror


Building Applications with the Linux Standard Base

r3lody (Ray Lodato) writes "Just because Linux is under the GPL, some people believe that it's pretty standardized. Actually, each distro has its own little additions and, consequently, quirks. Writing an application to work reliably under all variations is not a slam-dunk. The Linux Standard Base Specification seeks to provide the common ground that all Linux apps should adhere to, and therefore make reasonably sure that they will work as advertised. Building Applications with the Linux Standard Base is a reference manual for application developers to make sure their programs will work across the Linux map." Read on for the rest of Lodato's review. Building Applications with the Linux Standard Base author Core Members of the Linux Standard Base Team pages 246 publisher Pearson plc publishing as IBM Press rating 8 reviewer Ray Lodato (rlodato AT yahoo DOT com) ISBN 0131456954 summary Very dry reading, but a lot of useful information packed into a slim 246 pages.

I've been involved with IBM products and documentation since the late '70s, and their documentation has traditionally come in two flavors: user's guides, and reference manuals. The former are meant to be read cover-to-cover (more or less), and the latter are meant to be looked at for specific bits of information. This book falls more to the reference manual side of the spectrum. Consequently, reading it cover-to-cover was a little dry, but the information needed to get an application certified with the Linux Standard Base (LSB) was clearly laid out.

Building Applications with the Linux Standard Base (published by IBM Press and available on your favorite bookstore sites) is laid out in five large parts: Introduction, Developing LSB Applications, Certifying for the LSB, Contributing to the LSB Project, and Using LSB Resources. Except for the first part (Introduction), the book gives specific examples, and many, many references to the opengroup.org website's sections on the LSB.

It becomes obvious as you go through the book that the Linux Standard Base is still evolving. The authors (13 core members of the LSB team) frequently allude to how the project can (and should) be extended to increase its scope and sophistication. Two chapters (Adding New Interfaces..., and Adding New Architectures...) cover (albeit skimpily) what's needed to update the specification.

Backing up for a moment, Part II (Developing LSB Applications) describes in detail (with examples) the Dos and Don'ts of coding practices. It then explains carefully how an application should be packaged for distribution (RPM), and finally wraps up with a section on porting Solaris apps to the LSB. In each chapter, step-by-step instructions are given when appropriate. Differences in filesystem hierarchy, signal handling, and program options are all laid out to help you through.

Part III goes over the LSB Certification process. Both runtime environments (distros) and applications are covered. Again, the book lays out the process in a step-by-step approach.

The last part in the book talks about the various resources available: the written spec, the test suites, and various usage guides. The chapter on using the LSB test suites shows how much thought went into making sure a successful test ensures a certifiable (in a good way) application.

All in all, Building Applications with the Linux Standard Base, has what you need if you're developing a commercial-grade Linux distribution or application. Once your product has passed the testing described inside, you can be confident that it will work on almost anything Linux. Very dry reading, but a lot of useful information packed into a slim 246 pages. I'd give it a 7 for writing style, but a 9 for content: total=8/10.

You can purchase Building Applications with the Linux Standard Base from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, carefully read the book review guidelines, then visit the submission page.

6 of 282 comments (clear)

  1. Re:Actually... by jo42 · · Score: 5, Informative

    ...and I've see Java apps (i.e.InstallAnywhere) that stopped running because a distro changed from XFree86 to X.Org. The (Sun) JVM was expecting a certain library to be there, it wasn't, and boom!! - it fall down...

    Mandatory "Java Sux!" - me

  2. Online version w/ GNU Free Documentation License by AtomicJake · · Score: 5, Informative

    "Building Applications with the Linux Standard Base" has been (apparently) also published under the GNU Free Documentation License. Here is the Online version.

  3. Re:"linux standardization" by Frohboy · · Score: 2, Informative

    Umm... I don't think the "Linux Standards Base" is the hundredth project of its type you'd have seen since the inception of Linux. Whereas there have perhaps been other attempts at standardization by small groups of individuals, the LSB has been (more or less) the first major attempt amongst the distros and major vendors to come up with binary standards.

    Check out the membership of the Free Standards Group (which governs the LSB) here. Note that it includes essentially all the significant commercial Linux distros, as well as the big corporate supporters (IBM, HP, Sun). (Although I'm sure many on Slashdot scoff at the notion of Sun being associated with truly "free" standards, nonetheless they are a big corp with ties to Linux and OSS.)

    Furthermore, you talk about the LSB as though it is a new project. It has actually been around for a number of years, and has been mentioned on Slashdot many times over the years. (See e.g. here, here, here, and here.) Version 1.0 started in 2000. I believe 1.1 came out in 2001, followed by 1.2 and 1.3 in 2002. Version 2.0 came out in September of this year (with 2.0.1 released in late October). Currently, there is a 2.1 release candidate available.

  4. Re:What we need--installation/uninstallation API by sloanster · · Score: 2, Informative

    The API should remain sane so that you could install something from four years ago and still have it work. I can still run Windows 3.1 and 95 applications on my XP laptop. Try running a Linux binary from two years ago.

    You're FUDDing about the linux binary API, as I can install the quake 3 arena from 1999 (which I originally ran on redhat 5.2) on my suse 9.2 and it runs perfectly.

    As to your windows backwards compatibility, you lose points for dishonesty. I know of quite a few w95/w98 apps that simply crash and burn on 2k/xp - and you claim all windows 3.1 apps run fine on xp?

    I call bullshit.

  5. LSB is useless by n1ywb · · Score: 2, Informative
    http://www.gentoo.org/news/en/gwn/20030401-newslet ter.xml
    Portage 2.1 to adopt RPM format for LSB compliance

    In what will likely prove to be a controversial decision, Portage 2.1 will adopt the RPM format for all packages moving forward. The use of ebuilds will be deprecated in favor of the defacto RPM standard. The primary driver for this decision was to ensure compliance with the Linux Standard Base specification, which mandates RPM support for package management.

    The developers have been hard at work to make this migration as easy as possible. Already a proof-of-concept ebuild2rpm script is in place and being tested by a pilot group of developers. Unfortunately, because of the architectural differences between the two formats, some features will not be supported once Gentoo moves to RPM. USE variables are one such feature; sandbox security is another. However, the added benefit brought about by full LSB compliance should far outweigh the loss of these two minor features.

    Additionally, because of LSB's required library support, the xfree86 package will move to become part of the base Gentoo Linux system, rather than an optional addition. Users interested in learning more about the Linux Standard Base should read the LSB FAQ or the full LSB 1.3 specification.

    Note: This is an April Fool's joke.

    The differences between Linux distros are what make Linux a vibrant community and drive innovation. I hope the LSB project fails miserably to remove those differences.

    --
    -73, de n1ywb
    www.n1ywb.com
  6. Re:Standards by baquiano · · Score: 2, Informative

    Actually, a variation on a standard authoritative quote:

    The nice thing about standards is that there are so many of them to choose from.
    -- Andrew S. Tanenbaum

    --
    You're bound to be unhappy if you optimize everything. --Donald Knuth