[BusyBox] Question about internal apps....

David Douthitt ssrat at mailbag.com
Fri Aug 10 10:07:36 UTC 2001


Goetz Bock wrote:
> 
> On Fri, Aug 10 '01 at 09:33, Erik Andersen wrote:
> > On Fri Aug 10, 2001 at 10:23:17AM -0400, David Douthitt wrote:
> > > //Allow the shell to invoke all the compiled in BusyBox applets as if
> > > // they were shell builtins.  Nice for staticly linking an emergency
> > > // rescue shell, among other things. Off by default.
> > > // Only relevant if a shell is enabled.
> > > #define BB_FEATURE_SH_STANDALONE_SHELL
> > >
> > > Now, I thought that this meant that busybox applets would entirely act
> > > as if internal.  For example, in a system without only busybox installed
> >
> > Works fine for me here.  Did you also enable BB_FEATURE_SH_APPLETS_ALWAYS_WIN?
> It was my understanding that I only need to enable this, IF there
> IS a real executeable with this name.
> I had the same problem with BB statically linked with uClibc on a empty
> disk (only /proc, /dev, /sbin/busybox, /linuxrc -> /sbin/busybox,
> using 2.4.7 with devfs (automound on boot))
> But it was no problem for me, I simply made the needed links.

Problem is several-fold:

1. Making the needed links in the root filesystem takes up space in the
archive which is loaded by the kernel.

2. Prior to making the links (which I do via busybox --install) they do
not exist in the loaded root file system.

When I replaced ash (with its builtin echo and test and getopts) with
busybox ash (with its external echo and test and getopt) lots of
programs stopped functioning.  I would not expect this to happen; I was
surprised.

I'd like to see busybox ash be a drop-in replacement for ash.





More information about the busybox mailing list