Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Compiling Libsmbios on Linux

Linux Compilation

Libsmbios has been tested with the following compilers on Linux:

Note: Older versions of libsmbios were tested on GCC 2.96. Libsmbios is no longer actively maintained for this and earlier versions of GCC.

In addition to the tools mentioned in the All Platforms section, for the Linux compile the following tools are recommended (but not required):

The steps to build the library on Linux are as follows:

Compiling Xerces on Linux

To compile all of libsmbios, xerces is necessary. You can download the xerces-devel package from the libsmbios yum repository, which will save you some troubles. Information on the libsmbios yum repository is here: Libsmbios package repository (yum). To install the necessary xerces libs, do a "yum install xerces-devel" after setting up the repository.

If you wish to compile xerces from source, some people have reported problems compiling xerces on Linux. Here are a few things you need to do to compile the xerces tarball to an RPM.

1) Rename the tarball:

$ mkdir build
$ cd build/
$ mkdir RPMS SRPMS SPECS BUILD SOURCES
$ rpmbuild --define "_topdir $(pwd)" -ta ../xerces-c-current.tar.gz
error: File /home/michael_e_brown/xerces-c-src_2_7_0.tar.gz: No such file or
directory
$ cp ../xerces-c-current.tar.gz SOURCES/xerces-c-src_2_7_0.tar.gz

2) Unpackaged files:

Xerces compilation may fail on newer Red Hat distributions due to "unpackaged files" in their RPM. You can work around this issue by building xercies like this:

$ rpmbuild --define "_topdir $(pwd)" --define "_unpackaged_files_terminate_build 0" -ta SOURCES/xerces-c-src_2_7_0.tar.gz

3) SUSE x64 - The RPM does not compile due to failed validation checks. The current spec file places 64-bit libs in the wrong directory and needs to be patched. A version for SUSE with a fixed SPEC file is available in the libsmbios yum repository. A fix has been submitted upstream. Libsmbios package repository (yum)

4) FC4 - The RPM does not compile due to obsolete spec file syntax. A version for FC4 with a fix for this defect is in the libsmbios yum repository. A fix has been submitted upstream. Libsmbios package repository (yum)


Generated on Wed Apr 11 16:25:11 2007 for SMBIOS Library by doxygen 1.3.5