lynx-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Lynx-dev] Making a very small Lynx executable?


From: Small, Gene
Subject: RE: [Lynx-dev] Making a very small Lynx executable?
Date: Tue, 20 Dec 2005 11:40:09 -0500

Thomas,

Thanks for the details. I was not able to get quite the reduction as you
on my PPC or ARM targets. In any case I need to do some work on the
target side to make room available. BTW: the entire disk image is
compressed and stored in flash and then extracted to create the initial
ram disk by the boot loader. 

As it is I think it is impressive. The Zipit is a tiny little 802.11
wireless device that, as built, is intended to host a "chat" application
only. A group of folks have "hacked" it, in the good sense, and made it
possible to host alternate applications. There is a yahoo group covering
just this topic.

Thanks again,
Gene Small

-----Original Message-----
From: Thomas Dickey [mailto:address@hidden 
Sent: Monday, December 19, 2005 4:12 PM
To: Small, Gene
Cc: Thomas Dickey; address@hidden
Subject: RE: [Lynx-dev] Making a very small Lynx executable?

On Mon, 19 Dec 2005, Small, Gene wrote:

> Thomas,
>
> Thanks. I looked at this and it did not seem at first glance that
> limiting the character set support would save significantly. I'm
looking
> to embedded lynx on a zipit wireless device which has very limited
> flash. Lynx runs fine if it is copied down after boot or run from an
NFS
> mount. I wanted to squeeze it into the initrd so it would be there on
> boot. I'll look into other options.

It might be possible to compress the image and run from that (though I
have no idea how you'd embed that).

Anyway just for numbers, I compiled three copies of lynx.  One just
uses the configure script defaults, one turns off everything that has
a "--disable" in the configure --help message, and one uses the defaults
but uses the --with-charsets=no option:

> size lynx-normal lynx-minimal-charsets lynx-disable
    text    data     bss     dec     hex filename
1125609   91876  129320 1346805  148cf5 lynx-normal
1086265   60260  129320 1275845  1377c5 lynx-minimal-charsets
  794977   82268  119752  996997   f3685 lynx-disable

The column for "dec" is a little bigger than the filesize:

> ls -l lynx-normal lynx-minimal-charsets lynx-disable
-r-xr-xr-x  1 tom users  962665 Dec 19 15:46 lynx-disable
-rwxr-xr-x  1 tom users 1238757 Dec 19 15:50 lynx-minimal-charsets
-r-xr-xr-x  1 tom users 1315320 Dec 19 15:42 lynx-normal

Finally, if I combine the --disable's and the --with:

-rwxr-xr-x   1 tom        884574 Mon 15:58:04   lynx

So (without tinkering with the --without's), I can reduce it by 33%.

That's with ncurses (dynamically linked).  Prior conversation on this
stated that building with slang would be smaller - that is (sort of)
still true (doesn't take into account the fact that the slang shared
library is twice as big as ncurses):

-rwxr-xr-x   1 tom        860093 Mon 16:05:21   lynx*

Either way, the result runs, but is lacking some functionality that
you would normally expect (I just tried looking at the bookmark file,
and the last executable complained about nesting of html).

-- 
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net




reply via email to

[Prev in Thread] Current Thread [Next in Thread]