Annotation of /trunk/mkinitrd-magellan/klibc/usr/klibc/README.klibc
Parent Directory | Revision Log
Revision 1122 -
(hide annotations)
(download)
Wed Aug 18 21:11:40 2010 UTC (13 years, 8 months ago) by niro
File size: 2673 byte(s)
Wed Aug 18 21:11:40 2010 UTC (13 years, 8 months ago) by niro
File size: 2673 byte(s)
-updated to klibc-1.5.19
1 | niro | 1122 | This is klibc, what is intended to be a minimalistic libc subset for |
2 | use with initramfs. It is deliberately written for small size, | ||
3 | minimal entaglement, and portability, not speed. It is definitely a | ||
4 | work in progress, and a lot of things are still missing. | ||
5 | |||
6 | |||
7 | The build procedure is not very polished yet, but it should work like | ||
8 | this: | ||
9 | |||
10 | a) In the source root directory (the directory above the one in which | ||
11 | this file is found) create a symlink called "linux" pointing to a | ||
12 | reasonably recent Linux kernel tree (2.4 or 2.6 should be OK.) | ||
13 | This tree must have the include/asm symlink set up for the | ||
14 | architecture you're compiling for, and include/linux/autoconf.h | ||
15 | must exist. The easiest way to make sure of all of these is to do | ||
16 | a "make config" or any of its variants on the kernel tree is | ||
17 | question, followed by a "make dep" (2.4) or "make prepare" (2.6). | ||
18 | |||
19 | b) If you're cross-compiling, you need to set KLIBCARCH to the | ||
20 | appropriate architecture, and set CROSS_COMPILE to your toolchain | ||
21 | prefix. | ||
22 | |||
23 | IMPORTANT: if you're on a 64-bit machine with a 32-bit userland | ||
24 | (ia64, mips64, ppc64 sparc64, s390x or x86_64), and you want to | ||
25 | build the 32-bit version: you need to set KLIBCARCH to the 32-bit | ||
26 | architecture as well as set up the linux/include/asm symlink to | ||
27 | point to the 32-bit architecture. Building the 32-bit architecture | ||
28 | usually (but not always) produces smaller binaries, and is likely | ||
29 | to be better tested. | ||
30 | |||
31 | If you are on ARM, and want to build a thumb version of the library | ||
32 | (this is supported), change OPTFLAGS in arch/arm/MCONFIG to build | ||
33 | thumb code. | ||
34 | |||
35 | The following is the last known status of various architectures: | ||
36 | |||
37 | alpha: Working | ||
38 | arm-thumb: Untested | ||
39 | arm: Working | ||
40 | arm26: Not yet ported | ||
41 | avr32: Not yet ported | ||
42 | cris: Working | ||
43 | h8300: Not yet ported | ||
44 | i386: Working | ||
45 | ia64: Working static, shared untested | ||
46 | m32r: Untested | ||
47 | m68k: Untested | ||
48 | m68knommu: Not yet ported | ||
49 | mips: Working | ||
50 | mips64: Not yet ported | ||
51 | parisc: Working | ||
52 | parisc64: Not yet ported | ||
53 | ppc: Working | ||
54 | ppc64: Working | ||
55 | s390: Working | ||
56 | s390x: Working | ||
57 | sh: Untested | ||
58 | sh64: Not yet ported | ||
59 | sparc: Working | ||
60 | sparc64: Untested | ||
61 | v850: Not yet ported | ||
62 | x86-64: Working | ||
63 | xtensa: Not yet ported | ||
64 | |||
65 | Shared library support requires recent binutils on many | ||
66 | architectures. | ||
67 | |||
68 | Note that even the "working" ones likely have bugs. Please report | ||
69 | them if you run into them. | ||
70 | |||
71 | c) Type "make" and pray... | ||
72 | |||
73 | d) Try the test programs in the tests/ directory. They should run... | ||
74 | |||
75 | Contact the klibc mailing list: | ||
76 | |||
77 | http://www.zytor.com/mailman/listinfo/klibc | ||
78 | |||
79 | ... for more info. | ||
80 | |||
81 | -hpa |