[m-dev.] Mercury build size and library versioning
Peter Hawkins
peter at hawkins.emu.id.au
Wed Jul 14 22:55:52 AEST 2004
Hi...
The x86 package of mercury I uploaded to debian of ROTD 20040511 recently is
nearly 32Mb in size (compressed, not including documentation). Uncompressed,
mercury occupies around 130Mb of space. I'm interested in trying to trim this
down a bit.
Almost all of this comes from the lib/ directory in the mercury installation:
hawkinsp at vice:~$ du -hs /usr/lib/mercury/*
7.9M /usr/lib/mercury/bin
28K /usr/lib/mercury/conf
88K /usr/lib/mercury/elisp
1.7M /usr/lib/mercury/inc
16M /usr/lib/mercury/ints
108M /usr/lib/mercury/lib
64K /usr/lib/mercury/mdb
52K /usr/lib/mercury/mmake
20K /usr/lib/mercury/modules
lib/ appears mainly to contain the runtime files for each grade. I'm currently
building the following grades to include in the package:
asm_fast.gc
asm_fast.gc.profdeep
asm_fast.gc.memprof
asm_fast.gc.prof
asm_fast.gc.tr
asm_fast.gc.tr.debug
asm_fast.gc.prof.tr (I added this one since I use it a lot myself)
hlc.gc
hlc.par.gc
Can I safely omit any of these? I suspect profdeep can go until the deep
profiler has been fixed, any others?
My other query is to do with dynamic linking and mercury grades. The other
obvious place to reduce space usage would be to force dynamic linking by
default. It appears that all of the dynamic libraries for mercury grades are
unversioned. Unfortunately, this makes it impossible to package dynamically
linked applications, since it is not possible to correctly declare a
dependency on an unversioned library, leading to problems when the libraries
are changed.
What are the chances like of introducing properly versioned libraries in the
next release (and ensuring binary compatibility within major library
versions)?
=)
Peter
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to: mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions: mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------
More information about the developers
mailing list