In order to build LSB compliant binaries and packages, tools which are not in the LSB specification are often required. The LSB Build Environment supplies some of these tools and is designed to make it easier to generate LSB compliant binaries and packages.

About the LSB Build Environment

Using the build environment there are two main methods for generating LSB compliant packages. With both methods source code is compiled against LSB header files and linked against special stub libraries.

The primary method uses a wrapper around the compiler to apply the LSB build rules within a full host environment. The other method uses a chroot which imports tools from the host and restricts the build to tools and libraries that have been imported. Both methods have have strengths and weaknesses.

Current Status

The current release version of lsbdev is 2.1.x which is aligned with the LSB 2.1 specification. lsbdev is actually split into four packages:

  1. lsb-build-base - header files and stub libraries
  2. lsb-build-cc - the wrapper program
  3. lsb-build-c++ - LSB compliant static c++ libraries
  4. lsb-build-chroot - the chroot environment (experimental)

lsb-build-base is a prerequsite for any of the other packages.

Note that the chroot proved useful as a proof-of-concept but has shown some problems in practical use and is not currently recommended. A replacement may be provided in the future.

Planned future development

The packages will continue to evolve in response to need and to the evolution of the LSB specification.

A replacement for the original chroot package may be provided in the future.

Downloads

The latest release of the build environment tools are available from the LSB Download Page. Note that it's not necessary to have an LSB compliant distribution on which to install and use the LSB Build environment.

Example application packages

The LSB Application Battery is a set of example LSB compliant packages built using lsbdev. These packages may be fetched from the LSB Download Page.

For more information about the Application Battery, see the Appbat Page.

Mailing List

The lsb-build_at_freestandards.org mailing list can be used for discussing the build environment. Subscription and mailing list archive details can be found here.

Subproject Reports

Periodic reports may be found at http://www.linuxbase.org/impl/records.html. Note this has not been kept up to date, there may be more current information on the wiki page.

CVS Access

The source to the lsbdev package is stored in the LSB CVS repository. The build_env module contains all the code necessary to build the wrapper, headers, stub libraries and chroot. The packaging module has instructions for recreating the packages.

To find out how to access the CVS repository, see here.

Please send any feedback to lsb-build_at_freestandards.org

See Also


last change 2005-04-04 mats wichmann