Haskell 将所有依赖项的一部分编译为共享库

Haskell 将所有依赖项的一部分编译为共享库,haskell,dll,shared-libraries,haskell-stack,Haskell,Dll,Shared Libraries,Haskell Stack,假设我得到了(常规源代码)库A和B以及可执行E,这取决于两者 现在,我希望E直接包含A的对象文件,而B应该作为共享库添加(具体用法:B包含插件架构的共享类型)。我如何使用现有的工具,最好是stack 这是可能的,还是一个全有或全无的选择(只使用共享库或将所有内容链接到同一个二进制文件) 最佳情况下,我想为每个依赖项指定是静态链接还是动态链接。此外,这可能会进入.cabal文件,但我们必须处理我们得到的 (从技术上讲,这两者都是静态链接的,但在第二种情况下,目标代码被拆分到不同的文件中,您就知道

假设我得到了(常规源代码)库
A
B
以及可执行
E
,这取决于两者

现在,我希望
E
直接包含
A
的对象文件,而
B
应该作为共享库添加(具体用法:
B
包含插件架构的共享类型)。我如何使用现有的工具,最好是
stack

这是可能的,还是一个全有或全无的选择(只使用共享库或将所有内容链接到同一个二进制文件)


最佳情况下,我想为每个依赖项指定是静态链接还是动态链接。此外,这可能会进入
.cabal
文件,但我们必须处理我们得到的

(从技术上讲,这两者都是静态链接的,但在第二种情况下,目标代码被拆分到不同的文件中,您就知道了)