On Saturday 06 March 2010 20:15, Rob Landley wrote: > On Saturday 06 March 2010 04:50:43 Ajith Adapa wrote: > > > You can download 1.15.x, run "make allnoconfig", editing a few options in > > > .config file to enable httpd (+ CONFIG_STATIC, CONFIG_CROSS_COMPILER > > > etc), and run "make". > > > > > > Then you can replace _only_ httpd on the target system with version > > > 1.15.x, leaving everything else as-is. > > > > > > It'll take about 15 minutes. > > > > You mean to say that I can build the busybox binary with the latest > > 1.16 version and replace my existing busybox binary with the latest > > one and start using it ?? > > No, he's saying you can delete the httpd symlink that points to your old > busybox, and replace it with something else providing httpd functionality > (such as a new busybox binary that's configured to only implement httpd, and > thus is significantly smaller than a busybox binary that implements hundreds > of > different commands). > > Busybox is one big multi-function binary, which figures out how to behave > based > on what name it was called as. Thus standard practice is to create a lot of > symlinks all pointing to the busybox binary, so it can look at argv[0] and go > "I was called 'ls', that means I should call ls_main() and behave that way. > > Also, you don't _have_ to use symlinks. You could copy your busybox binary > to > every different one of those names, which would waste a huge amount of disk > space, but otherwise give you equivalent functionality. (Busybox would still > detect that it had been called "cat" when it was run, and behave > appropriately, ignoring the other built-in functionality.) > > Busybox is also extremely modular. At compile time, you can enable or > disable > each of those commands it knows how to behave like, increasing or decreasing > the size of the resulting binary. > > So what you can do is configure busybox "make allnoconfig", then use > menuconfig > to switch on just httpd and maybe a couple of tuning options, compile that, > copy the resulting busybox to your target system, rename it "httpd", and > stick > it in your $PATH somewhere. > > Deleting the old httpd symlink still leaves the old httpd functionality in > your existing 2006-era busybox binary, you just wouldn't be using it anymore. > > When you run httpd, you'd call the new binary instead. > > Denys: some variant of this is a FAQ.
Added to http://busybox.net/FAQ.html#backporting -- vda _______________________________________________ busybox mailing list [email protected] http://lists.busybox.net/mailman/listinfo/busybox
