LSB

The picture below represents the key LSB deliverables for application and distribution developers (click on particular items for details):

Specification

The Linux Standard Base (LSB) specifications are made available in two parts: an architecture independent (generic) part and an architecture dependent part. The architecture independent part is comprised of five modules: Core, C++, Desktop, Languages and Printing. The architecture dependent part is comprised of three modules: Core, C++ and Desktop.

Also, there are mandatory and trial use modules in the specification. The former impose mandatory requirements on LSB compliant distributions and applications may safely rely on the functionality described in mandatory modules. Functionality in trial use modules is not required in LSB compliant distributions and applications should take this into consideration. Meanwhile, trial use modules represent candidates for inclusion in the next versions of LSB.

LSB Application Tools

The Linux App Checker contains tools for analyzing dependencies (libraries and interfaces externally required) of application packages. In particular it helps developers in testing their applications for LSB compliance and enables easy steps for LSB certification. To install the Linux App Checker, please download the appropriate tar file, extract the tar file, and run the included install.sh script.

Linux App Checker is version independent tool, i.e. it supports all relevant LSB versions at once (LSB 3.0 or greater). Please refer to Linux App Checker Getting Started for instructions on how to use the tool.

The LSB Software Development Kit (SDK) contains the LSB Development Environment (shared library stubs, headers, lsbcc, and lsbc++) for building LSB compliant binaries. It supports all LSB releases starting from 3.0 at once.

To install the LSB SDK, please download the appropriate tar file, extract the tar file, and run the included install.sh script.

LSB Eclipse Plugin is intended to facilitate development of portable C/C++ applications for the Linux platform by integrating the LSB tools into the Eclipse IDE. It enables smooth using the LSB SDK for building C/C++ applications within the Eclipse IDE along with "at hand" checking the applications with the Linux Application Checker.

LSB Distribution Tools

LSB distribution tools help distribution and upstream developers in analysing their products with regard to LSB requirements. They can be useful both as just a part of QA cycle and as a part of LSB certification process.

LSB Distribution Testkit

The LSB Distribution Testkit (DTK) contains everything developers need to test a Linux distribution for LSB compliance. The front end of the Distribution Testkit is DTK Manager that helps visually manage the testing process. DTK Manager automatically downloads necessary tests from the Linux Foundation FTP server, so please be sure you have Internet connection on the testing system the first time you want to run the tests.

To install the LSB DTK Manager, please download the appropriate tar file, extract the tar file, and run the included install.sh script.

LSB DTK Manager supports automation of scheduled (e.g. nightly) runs of the LSB certification tests on multiple test systems with collection of the results on a single server. Please refer to our Distribution Autotesting page and to the DTK Manager Nightly Run HOWTO for details.

The LSB Workgroup has now released beta-test versions of the Linux Application Checker and the new Linux Distribution Checker. These are based on the ISPRAS releases of the Application Checker (4.0.8.0) and the Distribution Checker (4.0.1.9).

The first release candidate for version 4.0.3 of the LSB SDK is now available. It is not yet recommended for production work, but barring any serious bugs found in testing, will become the recommended production version, so everyone is encouraged to download and test the SDK on non-production code.

The easiest way to get the RC is to download the tarball bundle from here:

Current Best Effort Linker uses a set of fixed paths for the dynamic loader.

Should we concider expanding this to include envormental vars like LSB_LD_SO for path to lsb ld so file and LSB_PLATFORM_LD_SO for the distributions ld.so.

I know making lsb relocatable does not seam a requirement. With items like android using the / may not be a option. So the FHS offset to another directory maybe required. Should Best Effort be made support this.