过去几天我一直在努力学习Haskell,所以终于可以设置我的环境了。因此,我安装了Haskell平台和cabal。
我的编辑器是emacs,我的操作系统是Windows。
我从github下载了ghc-mod的master分支,并使用cabal我安装了依赖项,然后构建了项目。一切都很顺利,可执行文件似乎有效。
ghc-mod --version
或ghc-mod boot
等命令按预期工作。
然后,我在emacs上安装了haskell-mode并修改了.emacs以使用ghc。但是当我试图打开一个Haskell文件时,emacs冻结了“正在初始化......”。
有什么问题?
GHC版本:7.10.2 cabal版本:1.22.6.0使用版本1.22.4.0的cabal库 ghc-mod版本:由GHC 7.10.2编译的5.3.0.0
编辑1:16/8/2015 11:10
以下是我添加到.emacs
的行:
; haskell-mode
(add-hook 'haskell-mode-hook 'haskell-indentation-mode)
; ghc-mod for haskell
; I added to list path to ghc elisp file because I read somewhere that that's
; better than installing it from MELPA. I DID try to install it from melpa
; though. Didn't solve anything.
(add-to-list `load-path "~/cabal/x86_64-windows-ghc-7.10.2/ghc-mod-5.3.0.0/elisp")
(autoload 'ghc-init "ghc" nil t)
(autoload 'ghc-debug "ghc" nil t)
(add-hook 'haskell-mode-hook (lambda () (ghc-init)))
当我第一次尝试打开haskell文件时,Emacs会冻结。所以我猜它在ghc-init()
内的无限循环中堆叠。
编辑2:16/8/2015 21:16
ghc-debug
的输出为here