[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