Company Products/Technology Services News/Events Support Spacer Contact Partners Customers
English    日本語
Products Photo

Product Documentation for
Devicescape Universal Wireless Platform

Documentation Home for Devicescape Universal Wireless Platform | Package Guide

Package GuidePreviousNextIndex

 


uClibc package

Information on this package is covered here.

Package
Description
License
uClibc
Small footprint C library

Summary

uClibc is a space-saving "small footprint" C library for embedded Linux systems.

Although considerably smaller then the GNU C Library, uClibc supports most applications supported by glibc. uClibc supports standard Linux systems and also supports devices without memory management units (MMUs), known as "MMU-less" or µClinux systems.

These characteristics make uClibc an optimal choice for wireless device applications.

To port an application from glibc to uClibc, you must rebuild the source code. A brief outline of how to do this is provided below.

Rebuilding uClibc

  1. Extract uclibc sources:
  2. tsrpm --extract  uClibc-0.9.27-1.1.src.rpm

    This extracts the sources in ./rpm-sources/uClibc-0.9.27-1.1

  3. Apply patches to the uclibc source RPM.
  4. Add the custom enhancement/fix patch to the rpm-sources/uClibc-0.9.27-1.1 directory, add appropriate patch directives to the spec file.

  5. Making configuration changes
  6. The existing spec file and patch set shows a different approaches to doing this. One approach is to patch the extra/Configs/Config.in file to change the default values of variables. See the nousr patch and the endianness patch as examples.The other approach, demostrated in the spec files is to add sed directives to the existing fragment in the spec file that edits the .config file generated after running make defconfig.

  7. Isolate customization patches.
  8. If it is necessary to keep patches that add customizations separate. They can be added to the
    rpm-sources/uClibc-0.9.27-1.1/devicescape directory. Patches added here will get automatically picked up if tsrpm is invoked with the --cust=devicescape option.

  9. Rebuilding uclibc
  10. tsrpm  --build  --target=armv5b-uclibc
    rpm-sources/uClibc-0.9.27-1.1/uClibc.spec  # Build for target
    tsrpm  --build --cross-tool--target=armv5b-uclibc
    rpm-sources/uClibc-0.9.27-1.1/uClibc.spec  # Build for cross-tools
  11. Install
  12. Install the rpms built in the above step.

Licensing

uClibc is maintained by Erik Andersen and is licensed under the GNU LIBRARY GENERAL PUBLIC LICENSE.

See LGPL (GNU Lesser General Public License).

Related Packages

None

Package GuidePreviousNextIndex