3 Compiling uClibc requires Linux kernel header files. uClibc will
4 be compiled to match the interfaces available in the provided
5 version of the Linux kernel headers. Linux kernel version 2.0,
6 version 2.2, version 2.4 and version 2.6 are known to work. Other
7 kernel versions may work but havn't been tested. Its also helpful
8 to have a working version of GNU binutils, and GNU gcc -- using
9 excessively old versions of these packages can cause very strange
10 errors that are difficult to find and fix.
15 - Use must have a valid configuration file to compile uClibc. Do not
16 skip this step. New configuration options are added in each
17 release, and odd configuration options are sometimes removed.
18 To configure uClibc, you can run:
24 If you have an existing .config file, you can update this file
29 command, which will only ask you about new configuration options.
31 Available configuration commands are:
32 "make config" Text based configuration, no menus or colors.
33 "make menuconfig" Text based color menus, radiolists & dialogs.
34 "make oldconfig" Default all questions based on the contents of
35 your existing ./.config file.
36 "make defconfig" Use defaults for all options.
37 "make randconfig" Use random values for all options.
38 "make allyesconfig" Set all values to "yes" for all options.
39 "make allnoconfig" Set all values to "no" for all options.
46 - uClibc does not have proper dependancy checking (yet) so if you
47 change your uClibc configuration, you must current rebuild the
48 entire library, by first running
52 - Once you have a valid configuration file, just run
56 to compile uClibc. or if you are cross compiling, you would
57 instead run something like:
63 INSTALLING the uClibc development environment:
65 - As root, if necessary, run something like:
67 make PREFIX=<some path> install
69 This will install the uClibc runtime and development system (i.e.
70 all the header files, libraries, etc) into the directories defined
71 within your .config file.
76 - To compile programs with uClibc you will need a complete toolchain
77 (i.e. binutils, gcc, and uClibc) that was built expressly for use
80 - Native and cross compiling toolchains, as well as makefiles for creating
81 uClibc toolchains, are available from the uClibc website. You may want
82 to check out "buildroot", which is available from the uClibc download area,
83 which provides examples of how to build your own uClibc based system.