mirror of
https://github.com/UzixLS/KernelEx.git
synced 2025-07-19 07:21:20 +03:00
import KernelEx-4.0-RC1
This commit is contained in:
80
kexcrt/README
Normal file
80
kexcrt/README
Normal file
@ -0,0 +1,80 @@
|
||||
This is klibc, what is intended to be a minimalistic libc subset for
|
||||
use with initramfs. It is deliberately written for small size,
|
||||
minimal entaglement, and portability, not speed. It is definitely a
|
||||
work in progress, and a lot of things are still missing.
|
||||
|
||||
|
||||
The build procedure is not very polished yet, but it should work like
|
||||
this:
|
||||
|
||||
a) In the source root directory (the directory above the one in which
|
||||
this file is found) create a symlink called "linux" pointing to a
|
||||
reasonably recent Linux kernel tree (2.4 or 2.6 should be OK.)
|
||||
This tree must have the include/asm symlink set up for the
|
||||
architecture you're compiling for, and include/linux/autoconf.h
|
||||
must exist. The easiest way to make sure of all of these is to do
|
||||
a "make config" or any of its variants on the kernel tree is
|
||||
question, followed by a "make dep" (2.4) or "make prepare" (2.6).
|
||||
|
||||
b) If you're cross-compiling, you need to set KLIBCARCH to the
|
||||
appropriate architecture, and set CROSS_COMPILE to your toolchain
|
||||
prefix.
|
||||
|
||||
IMPORTANT: if you're on a 64-bit machine with a 32-bit userland
|
||||
(ia64, mips64, ppc64 sparc64, s390x or x86_64), and you want to
|
||||
build the 32-bit version: you need to set KLIBCARCH to the 32-bit
|
||||
architecture as well as set up the linux/include/asm symlink to
|
||||
point to the 32-bit architecture. Building the 32-bit architecture
|
||||
usually (but not always) produces smaller binaries, and is likely
|
||||
to be better tested.
|
||||
|
||||
If you are on ARM, and want to build a thumb version of the library
|
||||
(this is supported), change OPTFLAGS in arch/arm/MCONFIG to build
|
||||
thumb code.
|
||||
|
||||
The following is the last known status of various architectures:
|
||||
|
||||
alpha: Working
|
||||
arm-thumb: Untested
|
||||
arm: Working
|
||||
arm26: Not yet ported
|
||||
cris: Working
|
||||
h8300: Not yet ported
|
||||
i386: Working
|
||||
ia64: Working
|
||||
m32r: Untested
|
||||
m68k: Untested
|
||||
m68knommu: Not yet ported
|
||||
mips: Working
|
||||
mips64: Not yet ported
|
||||
parisc: Working
|
||||
parisc64: Not yet ported
|
||||
ppc: Working
|
||||
ppc64: Working
|
||||
s390: Working static, shared untested
|
||||
s390x: Working
|
||||
sh: Untested
|
||||
sh64: Not yet ported
|
||||
sparc: Working
|
||||
sparc64: Untested
|
||||
v850: Not yet ported
|
||||
x86-64: Working
|
||||
xtensa: Not yet ported
|
||||
|
||||
Shared library support requires recent binutils on many
|
||||
architectures.
|
||||
|
||||
Note that even the "working" ones likely have bugs. Please report
|
||||
them if you run into them.
|
||||
|
||||
c) Type "make" and pray...
|
||||
|
||||
d) Try the test programs in the tests/ directory. They should run...
|
||||
|
||||
Contact the klibc mailing list:
|
||||
|
||||
http://www.zytor.com/mailman/listinfo/klibc
|
||||
|
||||
... for more info.
|
||||
|
||||
-hpa
|
Reference in New Issue
Block a user