【问题标题】:How to make GHC generate dynamically linked binaries by default?如何让 GHC 默认生成动态链接的二进制文件?
【发布时间】:2018-03-10 23:56:10
【问题描述】:

是否可以更改 cabal 或 GHC 设置,以便 cabal install 默认生成动态二进制文件和库?

我正在使用 GHC 8.2.2,在没有 Haskell 平台或堆栈的 Ubuntu (16.04) 中使用 apt-get 安装。环顾四周,我发现了 SO 问题 Why can't cabal build mighttpd2 dynamically? 。那里的答案/cmets 说在cabal install 时添加--enable-shared --enable-executable-dynamic。这可以手动为所有依赖库完成(这会很痛苦)。

Small Haskell program compiled with GHC into huge binary 中,接受的答案说需要:

cabal install some_package --enable-shared --reinstall 

还提到了选项-dynamic

我的问题是:

是否可以从一开始就更改 cabal 配置文件 (~/.cabal/config) 中的选项,以便所有二进制文件及其依赖库都使用动态链接(即默认情况下使用 --enable-shared --enable-executable-dynamic-dynamic )?

【问题讨论】:

    标签: haskell cabal


    【解决方案1】:

    确实,您可以将~/.cabal/config 文件更改为具有以下行:

    shared: True
    executable-dynamic: True
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-27
      • 2017-09-24
      • 1970-01-01
      • 2012-12-25
      • 1970-01-01
      • 2019-07-31
      • 2012-12-08
      • 1970-01-01
      相关资源
      最近更新 更多