Fix "nm --size-sort" on the busybox binary and document how to make it work.
authorRob Landley <rob@landley.net>
Sun, 31 Jul 2005 04:25:00 +0000 (04:25 -0000)
committerRob Landley <rob@landley.net>
Sun, 31 Jul 2005 04:25:00 +0000 (04:25 -0000)
Rules.mak
docs/busybox.net/FAQ.html

index 73adf80a093d971eb6a4b994ebf04438ba0458a1..66edaca9fcc773bb9a4363dcff567567e752c025 100644 (file)
--- a/Rules.mak
+++ b/Rules.mak
@@ -169,7 +169,7 @@ ifeq ($(strip $(CONFIG_DEBUG)),y)
     STRIPCMD:=/bin/true -Not_stripping_since_we_are_debugging
 else
     CFLAGS+=$(WARNINGS) $(OPTIMIZATIONS) -D_GNU_SOURCE -DNDEBUG
-    LDFLAGS += -s -Wl,-warn-common
+    LDFLAGS += -Wl,-warn-common
     STRIPCMD:=$(STRIP) --remove-section=.note --remove-section=.comment
 endif
 ifeq ($(strip $(CONFIG_STATIC)),y)
index a2264f9feade39f9765e74da884b18fb39493911..a2d20bf5c1c4fd89fdc1e54332461beae3099252 100644 (file)
@@ -246,68 +246,33 @@ have additions to this FAQ document, we would love to add them,
     trust PayPal...
 
 <hr />
+<p>
+<h2><a name="optimize">I want to make busybox even smaller, how do I go about it?</a></h2>
+<p>
+       To conserve bytes it's good to know where they're being used, and the
+       size of the final executable isn't always a reliable indicator of
+       the size of the components (since various structures are rounded up,
+       so a small change may not even be visible by itself, but many small
+       savings add up).
+</p>
+<p>
+       To examine a busybox binary with an eye to saving bytes, build an
+       optimized debug version and run the "nm" command against it, like so:
+</p>
+<p>
+       make clean && make STRIPCMD=/bin/true && nm --size-sort busybox
+</p>
+<p>
+       This gives a list of symbols and the amount of space allocated for
+       each one, sorted by size.  (Note: do not enable CONFIG_DEBUG for this,
+       as that disables compiler optimization which is great for running gdb
+       but misleading when trying to figure out how much space each component
+       is really using under normal circumstances.)
+</p>
+<hr />
+
+
 
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
-<br>
 <br>
 <br>
 <br>