网上比较容易搜到 Haskell 的 Wiki, 但是写的内容非常不照顾新手,
比如说 calbal init 生成 Module 了, 怎么样在本地引用呢?
我的场景里, 调试的代码分成两个本地模块开发, 需要怎样进行引用?
还有, 从网上下载安装模块的时候, 是怎样安装, 怎样管理的呢?
网上比较容易搜到 Haskell 的 Wiki, 但是写的内容非常不照顾新手,
比如说 calbal init 生成 Module 了, 怎么样在本地引用呢?
我的场景里, 调试的代码分成两个本地模块开发, 需要怎样进行引用?
还有, 从网上下载安装模块的时候, 是怎样安装, 怎样管理的呢?
大抵说下我学习用cabal来build以及引用build的module的心得吧。
假定你是用Linux的(我用的ubuntu,windows下没有做过尝试)。
一个传统的流程是:
1.
cabal init
,就会创建一个project2. 在创建的project目录中编写代码
3. 测试完成后, 修改project目录中的
.cabal
配置文件, 然后cabal configure
,cabal build
4.
cabal build
如果按照上面的流程走下去,那么编写的library或者executable会被安装到
~/.cabal
中去,可以直接引用了。不过目前似乎更提倡使用
sandbox
来build,使用sandbox
的流程是:1.
cabal init
2.
cabal sandbox init
3. 编写代码,以及修改
.cabal
文件4.
cabal configure
5.
cabal build
6.
cabal install
这个时候,project不是被安装到了
~/.cabal
,而是被安装到了你的project目录中的.cabal-sandbox
中,此时,如果别的本地project想要引用这个project,需要使用cabal sandbox add-source /path/to/dependency/library/