gpt4 book ai didi

haskell - 链接的 Cabal 沙箱 - 从 `cabal repl` 找不到共享库

转载 作者:行者123 更新时间:2023-12-04 12:47:26 29 4
gpt4 key购买 nike

我有两个正在开发的软件包,AB .包B取决于 A .
A是在它自己的沙盒中开发的,B 也有类似的情况。 :

A> cabal sandbox init
A> cabal install --enable-shared

B> cabal sandbox init
B> cabal sandbox add-source ../A/
B> cabal install

另请注意 shared: True在我的 ~/.cabal/config .

这里的一切看起来都很好,它们都安装得很好。但是,在处理 B 时, 如果我发出 cabal repl , cabal-install 告诉我它无法加载 libAsomething.so/.dll文件。这里出了什么问题?

这是确切的错误:
...
Loading package mtl-0.0.1 ... linking ... done.
Loading package A-0.0.0 ... <command line>: can't load .so/.DLL for: /home/athan/dev/A/.cabal-sandbox/lib/x86_64-linux-ghc-7.8.3/A-0.0.0/libHSA-0.0.0-ghc7.8.3.so (/home/athan/dev/foo/B/.cabal-sandbox/lib/x86_64-linux-ghc-7.8.3/A-0.0.0/libHSA-0.0.0-ghc7.8.3.so: undefined symbol: AsomethingCrazyInAmodule_closure)

编辑:

我正在使用 GHC 7.8.3 和 cabal-install 1.20.0.3。

最佳答案

只使用一个沙箱对您有用吗?

(unpack A into src/A)
(unpack B into src/B)
cd src/B
cabal sandbox init
cabal add-source ../src/A
cabal install -- builds both A and B

现在只有一个沙箱(位于 src/B 中)。

关于haskell - 链接的 Cabal 沙箱 - 从 `cabal repl` 找不到共享库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27428945/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com