Skip to Content.
Sympa Menu

baslinux - Re: [BL] uclibc static lynx 2.8.6dev16, lynx.lss and mplayer

baslinux AT lists.ibiblio.org

Subject: Baslinux mailing list

List archive

Chronological Thread  
  • From: David Moberg <davidjmoberg AT gmail.com>
  • To: baslinux AT lists.ibiblio.org
  • Subject: Re: [BL] uclibc static lynx 2.8.6dev16, lynx.lss and mplayer
  • Date: Thu, 19 Jan 2006 16:02:48 -0800

sindi keesan wrote:

> >>> I've uploaded it. By changing CFLAGS to -Os (in the makefiles) I
> >>> was able to reduce the size by about 30k after compression.
>
> Please provide the URL.

It is still at the same location. You apparently found it
anyway.

> I thought larger code ran faster (or loaded faster).

No, twice as much code usually takes twice as long to
execute. But sometimes a faster algorithm will be slightly
larger than a slower one because of design choices.
For example, using a lookup table (list of numbers) for
computation will take more memory but will also be
much faster than calculating every single problem.

> If -Os optimizes for both size and speed, why use -02 as default?

Inertia. -O2 is the traditional switch, and since so many programs
used it in the past (before -Os became available) it is still often
the default.

MPlayer uses -O4 for some reason. Perhaps they feel that a couple
K will not make a difference in a multi-megabyte binary.

> With ordinary libraries (not uClibc) do faster executables get larger?

Not noticeably or consistently.

> > uClibc rootfs comes with gcc 3.4, which worked quite well with
> > lynx, openssl, dosemu, and many other packages that I have
> > compiled with it.
>
> Is gcc 3.4 compiled dynamically against uClibc?

Yes.

> http://www.uclibc.org/downloads says it has source code
>
> Is what I want root_fs_i386.ext2.bz2 21M?

Yes.

> It says you are supposed to compile it.

That is for the source code package, not the root_fs.

> Did you say they have a compiled version too?

Yes, the compiled version is root_fs.

> INSTALL says to make config and make and make install.
> And that I also need to compile binutils and gcc to use with it.

This is for the source package.

> They have in addition to the root-fs files, some tar.bz2 files
> uClibc-0.9.28.tar.bz2 etc., about 1.7MB. Are these source code and the
> root_fs precompiled image?

Yes, exactly.

> I thought source code was generally bigger than the compiled program.

The root_fs includes binaries of gcc, binutils, bash, busybox, and lots
more. The source code is just uClibc.

> I am utterly confused.

The download page is confusing. Just get the root_fs if you want
to start compiling uClibc static or dynamic binaries right away.

> They also have linux-libc-headers-2.4.31 files (4MB) and gcc*.tar.bz2
> 10MB. Headers are not a dynamic executable so I should not need to
> compile them but is this executable or source code for gcc?

The gcc package is an executable. But you do not need it if you
get the root_fs file.

> > To use the rootfs image, you need a partition with several hundred
> > MB of disk space to grow into. bunzip2 it, then mount -o loop.
> I am thinking about adding a 9GB scsi drive to one computer.
> Does this 21MB expand to several 100MB?

It expands to more than 100M. But you also need room to unpack
whatever you are compiling.

> If I am in a directory /uClibc does it use uClibc's root_fs libc and
> binutils and gcc instead of the other ones on my computer?

Yes, if you chroot to that directory. Just like chrooting between
BL2 and BL3. The uClibc root_fs is essentially a kernel-less
operating system that you can chroot into.

> I think you are overestimating my understanding of linux.

Maybe, but I don't think there is much that can go wrong.

David




Archive powered by MHonArc 2.6.24.

Top of Page