Ticket #2115 (closed feature request: duplicate)

Opened 5 years ago

Last modified 5 years ago

option for ghc rts to be linked as a shared object / dll

Reported by: jvl Owned by:
Priority: normal Milestone:
Component: Compiler Version: 6.9
Keywords: Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: Difficulty: Unknown
Test Case: Blocked By:
Blocking: Related Tickets:

Description

The ghc runtime is statically linked into each executable that ghc creates. This adds approximately 600K or more to each executable. Whilst for large programs this overhead is not to great, for embedded systems, where space is a premium this becomes problematic. Many C compilers offer a selection of statically linking in the C runtime library or dynamically linking it in. GHC should offer the same options.

As ghc rts is considerably more complex than that of C runtime, this poses some difficulty, but with appropriate bootstrapping code statically linked to load a shared rts, when this option is selected; creating such an option should not be to difficult to do.

This option, should in the first instance be made available on windows.

Change History

Changed 5 years ago by simonmar

  • status changed from new to closed
  • difficulty set to Unknown
  • resolution set to duplicate

We'll be adding support for dynamic linking in GHC 6.10. The basic support is already done (thanks to Clemens Fruhwirth's Summer of Code project).

Changed 5 years ago by simonmar

  • architecture changed from Multiple to Unknown/Multiple

Changed 5 years ago by simonmar

  • os changed from Multiple to Unknown/Multiple
Note: See TracTickets for help on using tickets.