ARMv4l
ARMv4, little endian, soft float, OABI
|
ARMv4tl
ARMv4t, little endian, soft float, EABI
|
ARMv5l
ARMv5, little endian, VFP, EABI
|
ARMv6l
ARMv6, little endian, VFP, EABI
|
|
Mips
MIPS r4k, big endian
|
Mipsel
MIPS r4k, little endian
|
|
PowerPC
PowerPC 405, 32-bit, big endian
|
PowerPC 440
PowerPC 440, 32-bit, big endian
|
|
|
|
i486
Intel 80486.
|
i586
Original Pentium
|
i686
Pentium Pro/II/III
| /
|
-
Boot Log - Full boot messages produced by launching this system
image under qemu (using the "run-emulator.sh" script included in each system
image tarball), then typing "cat /proc/cpuinfo" inside the emulated system,
then "exit".
-
Cross Compiler - A compiler which runs on a standard PC host (x86
or x86-64 Linux system) and produces output binaries for the specified $TARGET
architecture (Linux binaries linked against uClibc). To use, extract the
tarball and add its "bin" subdirectory to your $PATH, and then compile
with $TARGET-cc as your compiler name, such as:
mips-cc root-filesystem-mips/usr/src/thread-hello2.c -lpthread -static -o hello
The "bin" subdirectory contains a bunch of tools prefixed with the $TARGET
name followed by a dash, such as "powerpc-strip". The "lib" subdirectory
contains shared libraries built for the target, including uClibc as the
standard C library to link binaries against and uClibc++ as the standard
C++ library. The "include" subdirectory contains the header files
#included by programs.
-
Native Compiler - A compiler which runs on the $TARGET and
produces output binaries which also run on the $TARGET.
You should be able to extract this inside an existing target system, add
its "bin" directory to the $PATH, and use it as you would the cross compiler.
(Except its binaries have no $TARGET- prefixes.) Note that when it creats
dynamically linked binaries they expect to find the dynamic linker at a specific
absolute path (under /bin).
-
Root Filesystem - A root filesystem for the target, suitable for
chroot-ing into, containing the smallest/simplest Linux development environment
capable of rebuilding itself from source code.
This system is based on busybox and uClibc, includes a native compiler
toolchain (binutils, gcc, linux headers), additional development utilities
(make, bash, distcc), and miscelaneous files and directories (such as some /etc
files and an sbin/init.sh boot script).
-
System Image - A bootable linux kernel and filesystem image
configured for use with the emulator QEMU.
The filesystem image contains the same set of files as the root filesystem
tarball, this time packaged into a squashfs. It also has Linux kernel
configured for qemu, and shell scripts to launch qemu to run this kernel
with this filesystem image.
Basically you download this tarball, extract it, cd into the directory,
and "./run-emulator.sh". This gives you a shell prompt inside the emulator,
ala the above screen shots. Type "exit" when done.
-
Static Busybox Binary - Busybox implements
hundreds of standard command line utilities in a single binary weighing in
somewhere around one megabyte.
Busybox is a "swiss army knife" binary, which behaves differently based on
the name of its executable. This means that populating a directory of
symlinks to the busybox binary can provide access to all these commands
without requiring multiple copies of the binary.
This binary is statically linked against uClibc, so can be run
independently on a target system, in a chroot environment, or via QEMU
application emulation.
-
Static Dropbear Binary - Dropbear is
a combination ssh server and client
in a single executable (another "swiss army knife" binary) that weighs in at
around 100k. It also includes scp and an encryption key generator.
This binary is statically linked against uClibc for maximum portability.
-
Static Strace Binary - Strace is a
debugging tool that runs a child process, sniffing all the child's
system calls and printing a description of them to stderr, ala:
execve("/bin/false", ["false"], [/* 34 vars */]) = 0
brk(0) = 0x14ca000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb
e69a44000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
...
And so on. If a binary is failing or hanging, strace can give you an
idea of what it's doing, at least when it interacts with the rest of the
system.
This binary is statically linked against uClibc for maximum portability.
|
| | | |
| |
| |
|
|
|