2003-07-15 02:51:08 +05:30
|
|
|
Please see the LICENSE file for details on copying and usage.
|
2004-03-15 13:59:22 +05:30
|
|
|
|
2000-05-19 11:05:19 +05:30
|
|
|
BusyBox combines tiny versions of many common UNIX utilities into a single
|
|
|
|
small executable. It provides minimalist replacements for most of the utilities
|
2004-03-27 15:10:15 +05:30
|
|
|
you usually find in GNU coreutils, util-linux, etc. The utilities in BusyBox
|
|
|
|
generally have fewer options than their full-featured GNU cousins; however, the
|
|
|
|
options that are included provide the expected functionality and behave very
|
2004-04-06 21:09:20 +05:30
|
|
|
much like their GNU counterparts.
|
2003-07-15 02:51:08 +05:30
|
|
|
|
2000-05-19 11:05:19 +05:30
|
|
|
BusyBox has been written with size-optimization and limited resources in mind.
|
|
|
|
It is also extremely modular so you can easily include or exclude commands (or
|
|
|
|
features) at compile time. This makes it easy to customize your embedded
|
2004-03-27 15:10:15 +05:30
|
|
|
systems. To create a working system, just add /dev, /etc, and a Linux kernel.
|
2004-04-06 21:09:20 +05:30
|
|
|
BusyBox provides a fairly complete POSIX environment for any small or embedded
|
|
|
|
system.
|
1999-10-05 21:54:54 +05:30
|
|
|
|
2004-03-27 15:10:15 +05:30
|
|
|
BusyBox is extremely configurable. This allows you to include only the
|
|
|
|
components you need, thereby reducing binary size. Run 'make config' or
|
2004-04-06 21:09:20 +05:30
|
|
|
'make menuconfig' to select the functionality that you wish to enable.
|
2000-05-19 11:05:19 +05:30
|
|
|
|
2000-11-30 03:42:19 +05:30
|
|
|
After the build is complete, a busybox.links file is generated. This is
|
2004-03-27 15:10:15 +05:30
|
|
|
used by 'make install' to create symlinks to the BusyBox binary for all
|
2000-05-19 11:05:19 +05:30
|
|
|
compiled in functions. By default, 'make install' will place the symlink
|
|
|
|
forest into `pwd`/_install unless you have defined the PREFIX environment
|
2001-01-27 15:03:39 +05:30
|
|
|
variable (i.e., 'make PREFIX=/tmp/foo install')
|
1999-10-05 21:54:54 +05:30
|
|
|
|
2004-03-27 15:10:15 +05:30
|
|
|
If you wish to install hard links, rather than symlinks, you can use
|
|
|
|
'make PREFIX=/tmp/foo install-hardlinks' instead.
|
2003-07-15 02:51:08 +05:30
|
|
|
|
2000-06-22 05:49:33 +05:30
|
|
|
----------------
|
2004-03-15 13:59:22 +05:30
|
|
|
|
2001-01-27 02:28:23 +05:30
|
|
|
Supported architectures:
|
|
|
|
|
2004-03-27 15:10:15 +05:30
|
|
|
BusyBox in general will build on any architecture supported by gcc. It has
|
2001-01-27 02:28:23 +05:30
|
|
|
a few specialized features added for __sparc__ and __alpha__. insmod
|
2004-03-15 13:59:22 +05:30
|
|
|
functionality is currently limited to x86, ARM, SH3/4, powerpc, m68k,
|
2003-12-11 08:18:15 +05:30
|
|
|
MIPS, cris, and v850e.
|
2001-01-27 02:28:23 +05:30
|
|
|
|
2004-03-27 15:10:15 +05:30
|
|
|
Supported C Libraries:
|
2001-01-27 02:28:23 +05:30
|
|
|
|
2003-07-16 13:01:14 +05:30
|
|
|
glibc-2.0.x, glibc-2.1.x, glibc-2.2.x, glibc-2.3.x, uClibc. People
|
2001-11-10 16:16:42 +05:30
|
|
|
are looking at newlib and diet-libc, but consider them unsupported,
|
2003-07-16 13:01:14 +05:30
|
|
|
untested, or worse. Linux-libc5 is no longer supported -- you
|
|
|
|
should probably use uClibc instead if you want a small C library.
|
2001-01-27 02:28:23 +05:30
|
|
|
|
|
|
|
Supported kernels:
|
|
|
|
|
2003-07-16 13:01:14 +05:30
|
|
|
Full functionality requires Linux 2.2.x or better. A large fraction of the
|
2003-07-15 02:51:08 +05:30
|
|
|
code should run on just about anything. While the current code is fairly
|
|
|
|
Linux specific, it should be fairly easy to port the majority of the code
|
|
|
|
to, say, FreeBSD or Solaris, or MacOsX, or even Windows (if you are into that
|
2004-04-12 20:33:51 +05:30
|
|
|
sort of thing).
|
2001-01-27 02:28:23 +05:30
|
|
|
|
|
|
|
----------------
|
2000-12-13 23:37:38 +05:30
|
|
|
|
2000-06-22 05:49:33 +05:30
|
|
|
Getting help:
|
2000-12-13 23:37:38 +05:30
|
|
|
|
2000-06-22 05:49:33 +05:30
|
|
|
When you find you need help, you can check out the BusyBox mailing list
|
2001-12-08 07:26:15 +05:30
|
|
|
archives at http://busybox.net/lists/busybox/ or even join
|
2000-06-22 05:49:33 +05:30
|
|
|
the mailing list if you are interested.
|
|
|
|
|
|
|
|
----------------
|
2000-12-13 23:37:38 +05:30
|
|
|
|
2000-06-22 05:49:33 +05:30
|
|
|
Bugs:
|
2000-12-13 23:37:38 +05:30
|
|
|
|
2004-03-27 15:10:15 +05:30
|
|
|
If you find bugs, please submit a detailed bug report to the BusyBox mailing
|
2003-10-22 15:49:01 +05:30
|
|
|
list at busybox@mail.busybox.net. A well-written bug report should include a
|
2003-07-15 02:51:08 +05:30
|
|
|
transcript of a shell session that demonstrates the bad behavior and enables
|
2004-03-15 13:59:22 +05:30
|
|
|
anyone else to duplicate the bug on their own machine. The following is such
|
2003-07-15 02:51:08 +05:30
|
|
|
an example:
|
2000-12-13 23:37:38 +05:30
|
|
|
|
2003-10-22 15:49:01 +05:30
|
|
|
To: busybox@mail.busybox.net
|
2000-12-13 23:37:38 +05:30
|
|
|
From: diligent@testing.linux.org
|
2003-07-15 02:51:08 +05:30
|
|
|
Subject: /bin/date doesn't work
|
2000-12-13 23:37:38 +05:30
|
|
|
|
2004-03-27 15:10:15 +05:30
|
|
|
Package: BusyBox
|
2003-07-15 02:51:08 +05:30
|
|
|
Version: 1.00
|
|
|
|
|
2004-03-27 15:10:15 +05:30
|
|
|
When I execute BusyBox 'date' it produces unexpected results.
|
2003-07-15 02:51:08 +05:30
|
|
|
With GNU date I get the following output:
|
|
|
|
|
|
|
|
$ date
|
2004-03-27 15:10:15 +05:30
|
|
|
Sat Mar 27 14:19:41 MST 2004
|
2003-07-15 02:51:08 +05:30
|
|
|
|
|
|
|
But when I use BusyBox date I get this instead:
|
|
|
|
|
|
|
|
$ date
|
2004-03-27 15:10:15 +05:30
|
|
|
illegal instruction
|
2003-07-15 02:51:08 +05:30
|
|
|
|
2004-03-27 15:10:15 +05:30
|
|
|
I am using Debian unstable, kernel version 2.4.25-vrs2 on a Netwinder,
|
2003-07-15 02:51:08 +05:30
|
|
|
and the latest uClibc from CVS. Thanks for the wonderful program!
|
|
|
|
|
2000-12-13 23:37:38 +05:30
|
|
|
-Diligent
|
|
|
|
|
|
|
|
Note the careful description and use of examples showing not only what BusyBox
|
|
|
|
does, but also a counter example showing what an equivalent GNU app does. Bug
|
2003-07-15 02:51:08 +05:30
|
|
|
reports lacking such detail may never be fixed... Thanks for understanding.
|
2000-06-22 05:49:33 +05:30
|
|
|
|
|
|
|
----------------
|
2000-12-13 23:37:38 +05:30
|
|
|
|
2004-03-27 15:10:15 +05:30
|
|
|
Downloads:
|
2000-12-13 23:37:38 +05:30
|
|
|
|
2004-03-15 13:59:22 +05:30
|
|
|
Source for the latest released version, as well as daily snapshots, can always
|
|
|
|
be downloaded from
|
2001-12-22 06:07:54 +05:30
|
|
|
http://busybox.net/downloads/
|
2000-06-22 05:49:33 +05:30
|
|
|
|
|
|
|
----------------
|
2000-12-13 23:37:38 +05:30
|
|
|
|
2000-06-22 05:49:33 +05:30
|
|
|
CVS:
|
2000-12-13 23:37:38 +05:30
|
|
|
|
2000-11-30 03:42:19 +05:30
|
|
|
BusyBox now has its own publicly browsable CVS tree at:
|
2001-12-08 07:26:15 +05:30
|
|
|
http://busybox.net/cgi-bin/cvsweb/busybox/
|
2000-06-22 05:49:33 +05:30
|
|
|
|
|
|
|
Anonymous CVS access is available. For instructions, check out:
|
2001-12-08 07:26:15 +05:30
|
|
|
http://busybox.net/cvs_anon.html
|
2000-06-22 05:49:33 +05:30
|
|
|
|
|
|
|
For those that are actively contributing there is even CVS write access:
|
2001-12-08 07:26:15 +05:30
|
|
|
http://busybox.net/cvs_write.html
|
2000-06-22 05:49:33 +05:30
|
|
|
|
|
|
|
----------------
|
|
|
|
|
1999-11-18 05:49:26 +05:30
|
|
|
Please feed suggestions, bug reports, insults, and bribes back to:
|
2004-03-15 13:59:22 +05:30
|
|
|
Erik Andersen
|
2001-10-24 10:30:29 +05:30
|
|
|
<andersen@codepoet.org>
|
1999-12-11 09:46:51 +05:30
|
|
|
|