如何将库从一个 cabal 包导入到另一个
How to import a lib from one cabal package to another
所以我的文件夹结构是这样的
.
├── eulerlibs
│ ├── EulerLibs
│ └── eulerlibs.cabal
├── flake.lock
├── flake.nix
├── p001
│ ├── Main.hs
│ └── p001.cabal
├── p002
│ ├── Main.hs
│ └── p002.cabal
├── p003
│ ├── Main.hs
│ └── p003.cabal
├── p004
│ ├── Main.hs
│ └── p004.cabal
├── p005
│ ├── Main.hs
│ └── p005.cabal
我想做的是将 ./eulerlibs
(库)cabal 目录中的库模块导入到 ./p005
(可执行)cabal 目录
我知道我可以包含内置库 (*.so),但找不到链接两个 cabal 项目的方法
我对 cabal 和 haskell 都很陌生,因此非常感谢您提供一些见解。如果没有任何效果,我将不得不将该库添加到 p005 本身,我真的很想避免。
您可以使用 cabal.project
文件执行此操作。将其放在顶层(在 .
目录中),内容如下:
packages: */*.cabal
然后你们将能够在构建依赖项中使用彼此的 cabal 文件中的所有这些库,例如在 p001.cabal
:
...
library
...
build-depends: base, eulerlibs
...
...
这里是 cabal.project
个文件的完整文档:https://cabal.readthedocs.io/en/latest/cabal-project.html
所以我的文件夹结构是这样的
.
├── eulerlibs
│ ├── EulerLibs
│ └── eulerlibs.cabal
├── flake.lock
├── flake.nix
├── p001
│ ├── Main.hs
│ └── p001.cabal
├── p002
│ ├── Main.hs
│ └── p002.cabal
├── p003
│ ├── Main.hs
│ └── p003.cabal
├── p004
│ ├── Main.hs
│ └── p004.cabal
├── p005
│ ├── Main.hs
│ └── p005.cabal
我想做的是将 ./eulerlibs
(库)cabal 目录中的库模块导入到 ./p005
(可执行)cabal 目录
我知道我可以包含内置库 (*.so),但找不到链接两个 cabal 项目的方法
我对 cabal 和 haskell 都很陌生,因此非常感谢您提供一些见解。如果没有任何效果,我将不得不将该库添加到 p005 本身,我真的很想避免。
您可以使用 cabal.project
文件执行此操作。将其放在顶层(在 .
目录中),内容如下:
packages: */*.cabal
然后你们将能够在构建依赖项中使用彼此的 cabal 文件中的所有这些库,例如在 p001.cabal
:
...
library
...
build-depends: base, eulerlibs
...
...
这里是 cabal.project
个文件的完整文档:https://cabal.readthedocs.io/en/latest/cabal-project.html