[Lazarus] Size of binaries etc.
Graeme Geldenhuys
graemeg.lists at gmail.com
Thu Mar 22 11:36:16 CET 2012
On 22 March 2012 12:09, Mark Morgan Lloyd <markMLl.lazarus at ....> wrote:
>
> NO. Definitely not, under the circumstances. As I've already said: what
No problem, just thought I would mention it.
BTW:
[just for comparison sake]
By default a simple test app - one Form, one Button and one Label,
produces a 800KB 64-bit executable under Linux using FPC 2.6.1. A
32-bit executable will probably be 30% smaller than that. This is just
with smartlinking and strip enabled - no other optimizations. So I
could probably reduce those sizes even more if I wanted to.
> tinker with the programs I most definitely don't want him to have to
> download a hodgepodge of external libraries and packages.
Umm, you do know that LCL based apps have a HUGE dependency list
compared to fpGUI ! So the "hodgepodge of external libraries" will be
when using LCL, *not* when using fpGUI.
-----------------------------------------------
$ cd fpgui_test
$ ldd project1
linux-vdso.so.1 => (0x00007fff2f1ff000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f4968959000)
libXft.so.2 => /usr/lib/libXft.so.2 (0x00007f4968744000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00007f49684bd000)
libc.so.6 => /lib/libc.so.6 (0x00007f496813a000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00007f4967f05000)
libxcb.so.1 => /usr/local/lib/libxcb.so.1 (0x00007f4967ce7000)
libdl.so.2 => /lib/libdl.so.2 (0x00007f4967ae3000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00007f49678d9000)
libz.so.1 => /lib/libz.so.1 (0x00007f49676c1000)
/lib64/ld-linux-x86-64.so.2 (0x00007f4968cb4000)
libexpat.so.1 => /lib/libexpat.so.1 (0x00007f4967498000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x00007f4967294000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007f496708d000)
$ cd ../lcl_test
$ ldd project1
linux-vdso.so.1 => (0x00007fff769ff000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00007fb813194000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x00007fb812e5e000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x00007fb812c41000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x00007fb81261f000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x00007fb812372000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00007fb812129000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x00007fb811e4b000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00007fb811c46000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x00007fb811a41000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x00007fb8117f7000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x00007fb811574000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x00007fb811352000)
libdl.so.2 => /lib/libdl.so.2 (0x00007fb81114e000)
libc.so.6 => /lib/libc.so.6 (0x00007fb810dcb000)
/lib64/ld-linux-x86-64.so.2 (0x00007fb8133d6000)
libxcb.so.1 => /usr/local/lib/libxcb.so.1 (0x00007fb810bad000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x00007fb8108fa000)
librt.so.1 => /lib/librt.so.1 (0x00007fb8106f2000)
libm.so.6 => /lib/libm.so.6 (0x00007fb81046e000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00007fb81025c000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00007fb810052000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x00007fb80fe4e000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x00007fb80fc3e000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00007fb80fa35000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00007fb80f82a000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x00007fb80f61d000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x00007fb80f41a000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00007fb80f216000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00007fb80f010000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x00007fb80ede6000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00007fb80eb5f000)
libz.so.1 => /lib/libz.so.1 (0x00007fb80e948000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00007fb80e713000)
libpcre.so.3 => /lib/libpcre.so.3 (0x00007fb80e4e4000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x00007fb80e28b000)
libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x00007fb80e007000)
libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x00007fb80ddfd000)
libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x00007fb80dbe4000)
libpng12.so.0 => /lib/libpng12.so.0 (0x00007fb80d9bc000)
libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0
(0x00007fb80d7b8000)
libxcb-render.so.0 => /usr/local/lib/libxcb-render.so.0 (0x00007fb80d5af000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x00007fb80d3aa000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007fb80d1a4000)
libresolv.so.2 => /lib/libresolv.so.2 (0x00007fb80cf8b000)
libselinux.so.1 => /lib/libselinux.so.1 (0x00007fb80cd6c000)
libexpat.so.1 => /lib/libexpat.so.1 (0x00007fb80cb43000)
-----------------------------------------------
> for Chumby-style appliances- provided obviously that they're not swept into
> irrelevance by iPad and Android.
fpGUI will have Android support very soon (just waiting on my next
phone upgrade). ;-)
--
Regards,
- Graeme -
_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://fpgui.sourceforge.net
More information about the Lazarus
mailing list