标签: haskell-platform

安装haskell-platform的问题

我正在尝试安装Haskell(第一次).按照网站上的说明,我下载了:

  • GHC-6.10.4-I386的未知的Linux n.tar.bz2
  • 哈斯克尔平台,2009.2.0.2.tar.gz

我解压缩了ghc包,并安装它没有问题.然后我解压缩haskell-platform并运行以下命令:

./configure --prefix=/usr
make
su
make install
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

**************************************************
* Building each component completed successfully.
*
* Now do "sudo make install"
**************************************************
milanb@slicky:~/install/haskell-platform-2009.2.0.2$ su
root@slicky:/home/milanb/install/haskell-platform-2009.2.0.2# make install
scripts/install.sh
Installing mtl-1.1.0.2...

Error:
The mtl-1.1.0.2/Setup script does not exist or cannot be run
make: *** [install] Error 2
Run Code Online (Sandbox Code Playgroud)

接下来做什么?

linux installation haskell haskell-platform

5
推荐指数
1
解决办法
974
查看次数

卸载Haskell平台

在我运行configure后,在/ usr/local下将目录作为haskell-platform(由说明建议)创建为/ usr/loca,但是直到稍后才注意到,我拼错了Prefix.我把它移到了正确的位置,而不是把一个munged目录留在那里.当然,这一切都破了.事实证明/ usr/loca遍布整个地方.

然后我将Synaptic删除了ghc6(这是ubuntu 10.04,并且说明当天运行6.12.1/2010.1).当我重新安装时,它仍然认为软件包在/ usr/loca上?我甚至删除了package.cache,但是在文件路径中使用/ usr/loca重新创建了它,即使我在/ usr/local上使用正确的路径运行configure也是如此.

这个前缀来自哪里?在这一点上,我会尽快摆脱整个事情.我在哪里寻找要删除的点点滴滴?没有wiki或docs讨论如何摆脱这件事.Mac发行版中似乎有一个卸载程序,但我找不到*nix.

haskell-platform

5
推荐指数
1
解决办法
1447
查看次数

使用as-patterns不绑定到Haskell中的完整List

好吧,也许标题有点令人困惑,但我想要做的是有这样的功能:f (a:b:c:d:is) = ...但能够参考a:b:c:d而不再写它.事实证明,我不能做类似的事情e@(a:b:c:d):is并获得预期的结果.有任何想法吗?

haskell haskell-platform

5
推荐指数
2
解决办法
132
查看次数

编译Cygwin中的Haskell代码,以及Windows上的Haskell平台中的一些其他错误

我正在尝试使用Haskell Platform 2011.2.0.1在Haskell中编译一个简单的hello world程序.如果我在WinGHCi中加载代码,并使用GUI进行编译,则会创建.exe.然后我可以从Cygwin运行.exe.

但是如果我尝试在Cygwin中编译代码(使用ghc --make),链接器就会失败.但是,如果我从Windows cmd提示符编译,那么编译+链接器工作正常.

我需要将任何其他环境变量导入Cygwin,以使编译+链接器工作吗?我已经把下面迪尔斯在我的Cygwin的路径:2011.2.0.1/lib/extralibs/bin,2011.2.0.1/bin(这些是仅有的两个有效的Haskell相关的条目,我可以在Windows环境变量看).

我还注意到Windows环境变量中有几个无效项(这看起来像是Haskell安装中的一个错误):

  1. (system var)C/ProgramFiles/Haskell/bin- 这个目录不存在,因为我在D盘中安装了Haskell.
  2. (user var)userxxx/ApplicationData/cabal/bin- 此目录不存在.

我试图在HaskellPlatform中提交错误报告,但我没有权限这样做.

haskell ghci haskell-platform winghci

5
推荐指数
1
解决办法
1065
查看次数

没有附带的约束 - 这是什么意思?这个怎么运作?

我在LYAH练习.

phoneBook.hs文件包含以下代码:

phoneBook :: [(String,String)]

在尝试编译上述代码时,我收到以下错误:

*Main>:load"/home/optimight/phoneBook.hs"[1/1]编译Main(/home/optimight/phoneBook.hs,解释)

/home/optimight/phoneBook.hs:1:1:`phoneBook'的类型签名缺少附带的绑定失败,模块加载:无.

在对此答案进行回答之后添加了问题以及随后对此答案的评论:我们如何为上述类型签名提供实施?

如果我添加这个:

type phoneBook = [(String,String)]

我收到以下错误:

Prelude>:load"/home/optimight/phoneBook.hs"[1/1]编译Main(/home/optimight/phoneBook.hs,解释)

/home/optimight/phoneBook.hs:2:6:类型或类声明格式错误:phoneBook失败,模块加载:无

haskell haskell-platform

5
推荐指数
1
解决办法
2万
查看次数

在Haskell中无法使用GHC从.hs输出到.hc

当我听说GHC可以将文件输出到C时,我很感兴趣.

Glasgow Haskell编译器(GHC)编译为许多不同体系结构上的本机代码 - 以及使用C--作为中间语言的ANSI C.

所以我安装了Haskell平台并创建了一个简单的.hs文件.

main = putStrLn "Hello, World!"
Run Code Online (Sandbox Code Playgroud)

并根据手册.

-C生成C(.hc文件)后停止

现在我运行命令.

ghc -C test.hs
Run Code Online (Sandbox Code Playgroud)

但它不会创建.hc文件,也不会停止编译中.

$ ls
test.exe  test.hi  test.hs  test.o
Run Code Online (Sandbox Code Playgroud)

haskell functional-programming ghc haskell-platform

5
推荐指数
1
解决办法
1634
查看次数

Cabal错误:预处理指令无效# - }

$ cabal install arithmoi-0.4.0.3
Run Code Online (Sandbox Code Playgroud)

导致多个错误,如:

Math/NumberTheory/Moduli.hs:489:4:
     error: invalid preprocessing directive
      #-}
       ^
Run Code Online (Sandbox Code Playgroud)

我的系统:

OSX小牛队

Cabal版本= 1.18.1.1

GHCI版本= 7.6.3

提前致谢!

gcc haskell cabal haskell-platform

5
推荐指数
1
解决办法
1560
查看次数

这个符号是什么| 在Haskelll意味着

有人可以向我解释这个编码.

[ x*y | x <- [2,5,10], y <- [8,10,11], x*y > 50]
Run Code Online (Sandbox Code Playgroud)

我不明白这个|的含义 哈斯克尔的象征

haskell haskell-platform

5
推荐指数
2
解决办法
251
查看次数

如何修改Windows上的cabal配置文件

我正在我的桌面上安装Haskell,这是Windows系统.我按照指示行事.它说:修改您的cabal配置文件(您可以通过运行"cabal user-config init"来验证位置)以包含以下行:

extra-prog-path: C:\Program Files\Haskell Platform\8.0.2\msys\usr\bin
extra-lib-dirs: C:\Program Files\Haskell Platform\8.0.2\mingw\lib
extra-include-dirs: C:\Program Files\Haskell Platform\8.0.2\mingw\include
Run Code Online (Sandbox Code Playgroud)

我试图在命令提示符中调用"cabal user-config init",但它不起作用.任何人都知道我应该在哪里调用"cabal user-config init"?

haskell haskell-platform

5
推荐指数
0
解决办法
4207
查看次数

-bash: ghci: command not found(Haskell 交互式 shell,Haskell 安装)

编辑:我昨天最终升级到 macOS Catalina 并用 zsh 替换了 bash。应该注意的一件事是,该stack命令以前工作过,但尽管所有的修补都没有ghci 在删除与 Haskell 相关的所有文件后,我重试运行curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh 第二次命令行工具出现错误,所以我有手动安装它们xcode-select --install。重新运行 curl 后,我手动将环境文件的路径添加到我的 zsh 配置文件中: . "$HOME/.ghcup/env"\ echo '. $HOME/.ghcup/env' >> "$HOME/.zshrc" 这是 env 文件的内容:export PATH="$HOME/.cabal/bin:/Users/agnel/.ghcup/bin:$PATH" 现在一切似乎都在工作(我从未重新安装堆栈,但我想我可能会将其留给一边学习语言的基础知识)。

我昨天安装了 Haskell 平台,但很难让它正常工作。

我做的第一步是:

  1. curl -sSL https://get.haskellstack.org/ | 嘘
  2. curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | 嘘

在第 1 步。说明说要附加/Users/.../.local/binPATH 变量(我在/etc/paths. 在第 2 步中,脚本应该在安装必要的命令行工具时弹出一个对话框(但没有)。它还说完成后重新运行脚本(我做了)。脚本还说我应该调整我的 PATH 变量,以及/Users/.../.ghcup/env我的 shell 配置中的源代码。它自动询问了这个,但没有找到~/.bashrc文件却失败了。(我在 Mac 上读到了相反的内容)对于 …

bash haskell path haskell-platform macos-mojave

5
推荐指数
2
解决办法
3333
查看次数