Skip to content

Document why hls binaries are statically linked (and track ghc changes to allow loading dynamic libs within a static executable) #2000

Open
@nh2

Description

@nh2

I learned from @mpickering that HLS distributes GHC binaries with DYNAMIC_GHC_PROGRAMS=YES, and that this creates various problems for TemplateHaskell regarding dynamic linking.

I am interested in this topic because of NixOS/nixpkgs#129245.

I was trying to find documentation on the fact that, or why, HLS does that, but couldn't find any.

Could that be written down somewhere? It would make users' and packagers' life easier.


On the question itself: Would DYNAMIC_GHC_PROGRAMS=YES be more problematic to distribute somwhow? It appears to me that if e.g. the VSCode plugin downloader can download GHC, it could also download some .so files with it.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions