summaryrefslogtreecommitdiff
path: root/README
blob: 3581e650277a45524bfced977d41216722a38ef9 (plain)
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
44
45
46
47
48
49
50
51
52
53
54
55
56

* Configuration:

  cp ./extra/Configs/Config.<target arch> .Config

Then edit ./Config for your setup.  In particular, modify
CROSS and KERNEL_SOURCE as necessary.  You may also want
to modify PREFIX if you want to install the development
environment to /usr/local/ or elsewhere.  By default, the
development environment is installed into /usr and
/usr/<arch>-linux-uclibc/.


* Building:

  make


* Installing the development environment:

(As root, if necessary,)

  make install

This will install the header files, libraries, and the gcc
wrapper into the directories defined in Config.

If you are targetting the same architecture as the host machine,
you may want to add a link from /lib/ld-uclibc.0 to the location
where ld-uclibc.0 was installed.  This allows you to run binaries
compiled against uClibc without contaminating /lib too much.


* Installing the target runtime environment:

(As root, if necessary,)

   make TARGET_PREFIX=`pwd`/_install install_target

This installs only the files that are necessary to run binaries
compiled against uClibc.  Hint: You really don't want to install
the target runtime environment on the host machine.


* Using uClibc:

To compile programs with uClibc,

   export PATH={uClibc DEVEL_PREFIX}/bin:$PATH

and then just ./configure and make as usual.

Note: You may also want to look at extra/gcc-uclibc/gcc-uclibc.c for
      additional information concerning what options and environment
      variables the gcc wrapper handles.