OSDN Git Service

Moved old README to INSTALL, and wrote a new README that is much more
[uclinux-h8/uClibc.git] / INSTALL
diff --git a/INSTALL b/INSTALL
new file mode 100644 (file)
index 0000000..fd882fc
--- /dev/null
+++ b/INSTALL
@@ -0,0 +1,64 @@
+
+* Configuration:
+
+  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/.
+
+
+* 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.
+
+
+* Installing the target runtime environment:
+
+(As root, if necessary,)
+
+   make PREFIX=<temporary path> install_target
+
+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.
+
+
+* 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.
+
+Note2: 
+
+       There is an unwholesomely huge amount of code out there that
+       depends on the presence of GNU libc header files.  We have GNU
+       libc header files.  So we have committed a horrible sin in
+       uClibc.  We _lie_ and claim to be GNU libc in order to force
+       many applications to work as their developers intended.  This
+       is IMHO, pardonable, since these defines are not really
+       intended to check for the presence of a particular library, but
+       rather are used to define an _interface_.  Some programs (such
+       as GNU binutils) are especially chummy with glibc, and need
+       this behavior disabled by adding CFLAGS+=-D__FORCE_NOGLIBC