newlib, uclib

Frank Smith smith at
Fri Jul 7 01:14:19 EST 2000

Pete Buechler wrote:

> Another option is to identify the C library functions that you are actually
> using and remove the others from the archive. That would be rather tough by
> hand. Lineo has a closed source tool called "Lipo" which will do that for you -
> there may be a free replacement in the works somewhere.

The Debian boot-floppies package has a script that does this sort of
I believe. Don't know how well it performs as compared to lipo-suction.

Excerpt from 'boot-floppies/scripts/rootdisk/':

# Introduction:
# When creating boot floppies, there is never enough room on the disks.
# So it is important not to waste bytes on unnecessary code.
# Shared Libraries contain many functions that are probably not used in
# binaries included in the boot disks, and copying the whole library is
# waste of space.
# This utilitiy helps to reduce the necessary libraries to only include
# symbols needed to run a given set of executables.
# Features:
# * Automatic detection of all necessary libraries, even for
#   dependencies, for a given set of executables.
# * Automatic installation of all needed libraries and soname links.
# * Automatic reduction of all libraries to minimal size for which PIC
#   libraries are provided.
# Requirements:
# * Beside the shared libraries, you need libfoo_pic.a files for all
#   libraries you want to reduce.
# * You need binutils (notably objdump and objcopy) installed.


Frank Smith, MCompSci
Principal Software Designer      frank.smith at
AMIRIX Systems Inc.    
Embedded Debian Project
77 Chain Lake Drive              902-450-1700 x289 (Phone)
Halifax, N.S. B3S 1E1            902-450-1704 (FAX)

** Sent via the linuxppc-embedded mail list. See

More information about the Linuxppc-embedded mailing list