shell script variables

Rob Landley rob at landley.net
Mon Oct 30 21:42:32 UTC 2006


On Sunday 29 October 2006 4:37 pm, extmaillist at linuxbox.cz wrote:
> Hi Denis,
> 
> but anyways, I've been using statically compiled bb for years, and I really 
started having problems just with this one patch I mentioned before, so is 
situation with glibc really that bad? 

"I've been using statically complied busybox for years with older versions of 
gcc and older versions of glibc.  I upgraded glibc and gcc and busybox 
doesn't work anymore.  What's wrong with busybox?"

You can trigger this bug with a hello world program:

  cat > hello.c << EOF
  #include <stdio.h>

  int main(int argc, char *argv)
  {
    printf("Hello world\n");
    return 0;
  }
  EOF
  gcc -static -Wl,--gc-sections hello.c &&  (./a.out | cat)

It's not our bug.  Honest and truly it isn't.

To work around the bug, remove --gc-sections from Rules.mak.  The resulting 
binary will be bigger, but if you're statically linking against glibc you're 
already doubling the size of your binary unnecessarily, so it shouldn't come 
as a surprise that you need to make it even _bigger_ to work around one of 
their bugs.

> I mean, I don't really have problem starting using uClibc instead, but I'm
> just a bit afraid as I see it as quite big change. So is statically
> compiling to uClibc really safe? And is uClibc generally OK for production
> use? Is there something else I should be aware of? It's still kind of big
> surprise for me, as I'd much more expect glibc to be rock stable then
> uClibc.     

What gave you the idea that glibc was stable?  A package being widely used is 
no guarantee of quality.  (Sendmail, case in point.)

Rob
-- 
"Perfection is reached, not when there is no longer anything to add, but
when there is no longer anything to take away." - Antoine de Saint-Exupery



More information about the busybox mailing list