1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
diet libc to statically link programs that don't need all the bloat
from glibc.
malloc, printf and scanf contributed from Olaf Dreesen.
To compile:
$ make
make should compile the diet libc itself without warnings. In addition
to the diet libc, the default make target includes t, which is a test
program and probably contains code which produces warnings. You can
safely ignore them.
When make is done, it will have created dietlibc.a in bin-i386 (or
bin-ppc, bin-alpha, bin-sparc, bin-ppc or bin-arm, depending on your
architecture). In that directory you will also find a program called
"diet", which you need to copy in a directory in your $PATH:
# install bin-i386/diet /usr/local/bin
Then you can compile programs by prepending diet to the command line,
i.e.
$ diet gcc -s -Os -pipe -o t t.c
diet is cross-compiler friendly and can also be used like this:
$ diet sparc-linux-gcc -o t t.c
diet will then link against dietlibc.a from bin-sparc, of course.
diet comes with a man page (diet.1), which you can copy to an
appropriate location, too:
# cp diet.1 /usr/local/man/man1
After you compiled the diet libc successfully, I invite you to check out
the embedded utils (http://www.fefe.de/embutils/) and the diet libc
binary repository (ftp://foobar.math.fu-berlin.de/pub/dietlibc/), too.
The embedded utils are small replacements for common utilities like mv,
chown, ls, and even a small tar that can extract tar files. The binary
repository contains a few utilities I linked against the diet libc, for
example gzip, bzip2 and fdisk.
|