[mercury-users] Generating small and fast binaries in Mercury

Julien Fischer juliensf at csse.unimelb.edu.au
Mon Jul 2 00:48:30 AEST 2007

On Fri, 29 Jun 2007, Alexsandro Soares wrote:

> Sometime ago someone told me that it's possible to compile Mercury
> compiler source code in order to  generate smaller and faster final
> binaries.

Of the compiler itself, or of something you're compiling with it?

> This same person told me that this entire process can last for
> days. Is it true?

It's not something that I'm aware of.  You can reduce the size of
executables by using dynamic linking (which is the default on most
systems anyway**).  Enabling `--optimise-space' may also help.
(Neither of these things should last for days though.)

** By default the Mercury compiler itself, i.e. the exectuable
mercury_compile, is statically linked.  You can set the environment
variable LINK_STATIC to "no" in order to build a dynamically linked

Dynamic linking is not the default on x86, because supporting
PIC on that system means that we cannot use the register holding
the global offset table as a Mercury virtual machine register.

Also, dynamic linking is not (currently) supported on windows.

mercury-users mailing list
Post messages to:       mercury-users at csse.unimelb.edu.au
Administrative Queries: owner-mercury-users at csse.unimelb.edu.au
Subscriptions:          mercury-users-request at csse.unimelb.edu.au

More information about the users mailing list