aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorlandley <landley@69ca8d6d-28ef-0310-b511-8ec308f3f277>2006-05-11 17:21:13 +0000
committerlandley <landley@69ca8d6d-28ef-0310-b511-8ec308f3f277>2006-05-11 17:21:13 +0000
commitb085b45e64a778b02acd351d4b15f21396428544 (patch)
treee342a83e11d8ed79e4c4f5a9547b72717af1bbda /docs
parent7c0ccbc404f3d8eb64d64ae69131b939e6123ba1 (diff)
downloadbusybox-w32-b085b45e64a778b02acd351d4b15f21396428544.tar.gz
busybox-w32-b085b45e64a778b02acd351d4b15f21396428544.tar.bz2
busybox-w32-b085b45e64a778b02acd351d4b15f21396428544.zip
More about configuring busybox.
git-svn-id: svn://busybox.net/trunk/busybox@15070 69ca8d6d-28ef-0310-b511-8ec308f3f277
Diffstat (limited to 'docs')
-rw-r--r--docs/busybox.net/FAQ.html76
1 files changed, 64 insertions, 12 deletions
diff --git a/docs/busybox.net/FAQ.html b/docs/busybox.net/FAQ.html
index 07c1fd4e9..6bc144df6 100644
--- a/docs/busybox.net/FAQ.html
+++ b/docs/busybox.net/FAQ.html
@@ -8,16 +8,17 @@ have additions to this FAQ document, we would love to add them,
8 8
9<h2>General questions</h2> 9<h2>General questions</h2>
10<ol> 10<ol>
11<li><a href="#getting_started">How can I get started using BusyBox?</a> 11<li><a href="#getting_started">How can I get started using BusyBox?</a></li>
12<li><a href="#build_system">How do I build a BusyBox-based system?</a> 12<li><a href="#configure">How do I configure busybox?</a></li>
13<li><a href="#kernel">Which Linux kernel versions are supported?</a> 13<li><a href="#build_system">How do I build a BusyBox-based system?</a></li>
14<li><a href="#arch">Which architectures does BusyBox run on?</a> 14<li><a href="#kernel">Which Linux kernel versions are supported?</a></li>
15<li><a href="#libc">Which C libraries are supported?</a> 15<li><a href="#arch">Which architectures does BusyBox run on?</a></li>
16<li><a href="#commercial">Can I include BusyBox as part of the software on my device?</a> 16<li><a href="#libc">Which C libraries are supported?</a></li>
17<li><a href="#external">Where can I find other small utilities since busybox does not include the features I want?</a></li> 17<li><a href="#commercial">Can I include BusyBox as part of the software on my device?</a></li>
18<li><a href="#demanding">I demand that you to add &lt;favorite feature&gt; right now! How come you don't answer all my questions on the mailing list instantly? I demand that you help me with all of my problems <em>Right Now</em>!</a> 18<li><a href="#external">Where can I find other small utilities since busybox does not include the features I want?</a></li></li>
19<li><a href="#helpme">I need help with BusyBox! What should I do?</a> 19<li><a href="#demanding">I demand that you to add &lt;favorite feature&gt; right now! How come you don't answer all my questions on the mailing list instantly? I demand that you help me with all of my problems <em>Right Now</em>!</a></li>
20<li><a href="#contracts">I need you to add &lt;favorite feature&gt;! Are the BusyBox developers willing to be paid in order to fix bugs or add in &lt;favorite feature&gt;? Are you willing to provide support contracts?</a> 20<li><a href="#helpme">I need help with BusyBox! What should I do?</a></li>
21<li><a href="#contracts">I need you to add &lt;favorite feature&gt;! Are the BusyBox developers willing to be paid in order to fix bugs or add in &lt;favorite feature&gt;? Are you willing to provide support contracts?</a></li>
21</ol> 22</ol>
22 23
23<h2>Troubleshooting</h2> 24<h2>Troubleshooting</h2>
@@ -61,10 +62,10 @@ have additions to this FAQ document, we would love to add them,
61<p> 62<p>
62<h2><a name="getting_started">How can I get started using BusyBox?</a></h2> 63<h2><a name="getting_started">How can I get started using BusyBox?</a></h2>
63<p> If you just want to try out busybox without installing it, download the 64<p> If you just want to try out busybox without installing it, download the
64 tarball, extract it, run "make allyesconfig", and then run "make". 65 tarball, extract it, run "make defconfig", and then run "make".
65</p> 66</p>
66<p> 67<p>
67 This will create a busybox binary with all features enabled. To try 68 This will create a busybox binary with almost all features enabled. To try
68 out a busybox applet, type "./busybox [appletname] [options]", for 69 out a busybox applet, type "./busybox [appletname] [options]", for
69 example "./busybox ls -l" or "./busybox cat LICENSE". Type "./busybox" 70 example "./busybox ls -l" or "./busybox cat LICENSE". Type "./busybox"
70 to see a command list, and "busybox appletname --help" to see a brief 71 to see a command list, and "busybox appletname --help" to see a brief
@@ -90,6 +91,57 @@ have additions to this FAQ document, we would love to add them,
90 standalone shell is dependent on the existence of /proc/self/exe, so before 91 standalone shell is dependent on the existence of /proc/self/exe, so before
91 using it in a chroot environment you must mount /proc.) 92 using it in a chroot environment you must mount /proc.)
92</p> 93</p>
94
95<hr />
96<p>
97<h2><a name="configure">How do I configure busybox?</a></h2>
98<p> Busybox is configured similarly to the linux kernel. Create a default
99 configuration and then run "make menuconfig" to modify it. The end
100 result is a .config file that tells the busybox build process what features
101 to include. So instead of "./configure; make; make install" the equivalent
102 busybox build would be "make defconfig; make; make install".
103</p>
104
105<p> Busybox configured with all features enabled is a little under a megabyte
106 dynamically linked on x86. To create a smaller busybox, configure it with
107 fewer features. Individual busybox applets cost anywhere from a few
108 hundred bytes to tens of kilobytes. Disable unneeded applets to save,
109 space, using menuconfig.
110</p>
111
112<p>The most important busybox configurators are:</p>
113
114<ul>
115<li><p>make <b>defconfig</b> - Create the maximum "sane" configuration. This
116enables almost all features, minus things like debugging options and features
117that require changes to the rest of the system to work (such as selinux or
118devfs device names). Use this if you want to start from a full-featured
119busybox and remove features until it's small enough.</p></li>
120<li><p>make <b>allnoconfig</b> - Disable everything. This creates a tiny version
121of busybox that doesn't do anything. Start here if you know exactly what
122you want and would like to select only those features.</p></li>
123<li><p>make <b>menuconfig</b> - Interactively modify a .config file through a
124multi-level menu interface. Use this after one of the previous two.</p></li>
125</ul>
126
127<p>Some other configuration options are:</p>
128<ul>
129<li><p>make <b>oldconfig</b> - Update an old .config file for a newer version
130of busybox.</p></li>
131<li><p>make <b>allyesconfig</b> - Select absolutely everything. This creates
132a statically linked version of busybox full of debug code, with dependencies on
133selinux, using devfs names... This makes sure everything compiles. Whether
134or not the result would do anything useful is an open question.</p></li>
135<li><p>make <b>allbareconfig</b> - Select all applets but disable all sub-features
136within each applet. More build coverage testing.</p></li>
137<li><p>make <b>randconfig</b> - Create a random configuration for test purposes.</p></li>
138</ul>
139
140<p> Menuconfig modifies your .config file through an interactive menu where you can enable or disable
141 busybox features, and get help about each feature.
142
143
144
93<p> 145<p>
94 To build a smaller busybox binary, run "make menuconfig" and disable the 146 To build a smaller busybox binary, run "make menuconfig" and disable the
95 features you don't need. (Or run "make allnoconfig" and then use 147 features you don't need. (Or run "make allnoconfig" and then use