summaryrefslogtreecommitdiff
path: root/INSTALL
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL')
-rw-r--r--INSTALL79
1 files changed, 55 insertions, 24 deletions
diff --git a/INSTALL b/INSTALL
index 211659147..9ea7e6204 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,48 +1,79 @@
+SOFTWARE REQUIREMENTS
-* Configuration:
+ Compiling and running uClibc requires Linux kernel header files.
+ uClibc will be compiled to match the interfaces available in the
+ provided version of the Linux kernel headers. Linux kernel version
+ 2.0, version 2.2, and version 2.4 are known to work. Other kernel
+ versions may work but havn't been tested. Its also helpful to have
+ a working version of GNU binutils, and GNU gcc -- using excessively
+ old versions of these packages can cause very strange errors that
+ are difficult to find and fix.
- ln -s ./extra/Configs/Config.<arch> ./Config
-Then edit ./Config for your setup. In particular, modify CROSS and
-KERNEL_SOURCE as necessary. You may also want to modify
-SHARED_LIB_LOADER_PATH, DEVEL_PREFIX, and SYSTEM_DEVEL_PREFIX depending
-on where you want to install the development environment. By default,
-the development environment is installed into /usr/<arch>-linux-uclibc/.
+CONFIGURING uClibc:
+ - Check the Rules.mak file and adjust CROSS to specify your cross-
+ compiler if you are cross compiling.
-* Building:
+ - Use must have a valid configuration file to compile uClibc. Do not
+ skip this step. New configuration options are added in each
+ release, and odd problems will turn up if your configuration file
+ is not set up as expected. If you want to carry your existing
+ configuration to a new version with minimal work, use "make
+ oldconfig", which will only ask you for the answers to new
+ questions.
- make
+ - Available configuration commands are:
+ "make menuconfig" Text based color menus, radiolists & dialogs.
+ "make oldconfig" Default all questions based on the contents of
+ your existing ./.config file.
+ "make defconfig" Use defaults for all options.
+ "make randconfig" Use random values for all options.
+ "make allyesconfig" Set all values to "yes" for all options.
+ "make allnoconfig" Set all values to "yes" for all options.
+ - uClibc does not have proper dependancy checking (yet) so if you
+ change your uClibc configuration, you must current rebuild the
+ entire library, by first running 'make clean'.
-* Installing the development environment:
-(As root, if necessary,)
- make install
+COMPILING uClibc:
-This will install the header files, libraries, and the gcc
-wrapper into the directories defined in Config.
+ - Once you have a valid configuration file, just run 'make' to compile
+ uClibc.
-* Installing the target runtime environment:
-(As root, if necessary,)
+INSTALLING the uClibc development environment:
- make PREFIX=<temporary path> install_target
+ - As root, if necessary, run:
-This installs only the files that are necessary to run binaries
-compiled against uClibc. Hint: You probably do not want to install
-the target runtime environment on your host machine.
+ make install
+ This will install the header files, libraries, and the gcc wrapper
+ into the directories defined in Config.
-* Using uClibc:
-To compile programs with uClibc,
+INSTALLING the uClibc target runtime environment:
+
+ - As root, if necessary, run:
- export PATH={uClibc DEVEL_PREFIX}/bin:$PATH
+ make PREFIX=<temporary path> install_target
-and then just ./configure and make as usual.
+ This will install only the files that are necessary to run
+ binaries compiled against uClibc. Hint: You probably do not want
+ to install the target runtime environment into /lib on your host
+ machine.
+
+
+USING uClibc:
+
+ - To compile programs with uClibc,
+
+ export PATH={uClibc DEVEL_PREFIX}/bin:$PATH
+
+ and then just run './configure' and 'make' as usual.
Note: