我是Haskell的新手。我正在使用堆栈来安装称为小鸭的库。在github上,作者要求使用堆栈安装小鸭。我已经安装了堆栈,并引用了github页面进行安装github link for duckling。
步骤-1进行安装 -$堆栈构建 在这一步中,我遇到了缺少C库的错误:pcre
我已经尝试解决此问题,但是我不知道该怎么办。 我已经完成了几件事,例如从pcre.org下载pcre-8.42并将其提取到pcre-8.42文件夹中。 我不知道如何从这里解决。
请帮助我,我几乎花了4到5个小时来完成这项工作,但我没有前进的方向。
谢谢, 尼尔
答案 0 :(得分:1)
欢迎使用Unix C标头地狱。
就像太多的Haskell库和可执行文件一样,Duckling依赖于一套完整的Unix C库。 PCRE是Perl兼容的正则表达式库,在大多数Unix构建中是标准的,但需要在Microsoft Windows上手动安装。
但是,事情就来了:PCRE依赖于一堆在Unix中也总是存在的其他工具,例如make
和gcc
以及C头文件,等等... < / p>
要在Microsoft Windows上构建Duckling,您将需要使用其中一整套工具来提供可以在其中运行GHC的类Unix环境。
我看到您已经发现MSys并在其中安装了PCRE。下一步是让stack
在类似Unix的环境中运行,以便ghc版本可以找到所需的所有库。我的经验是,这通常意味着从MSys bash提示符重新安装堆栈-或至少将stack.exe文件重新定位到/usr/local/bin
目录,然后从MSys bash提示符而不是window命令提示符运行堆栈命令
如果这不起作用,请尝试询问有关如何使堆栈与Windows上的Unix头文件一起运行或搜索有关该主题的其他问题的新问题。
答案 1 :(得分:0)
打开duckling.cabal文件,并用regex-pcre-builtin替换regex-pcre
参见此处:http://hackage.haskell.org/package/regex-pcre-builtin
现在stack build
应该成功完成