我正在编写我的第一个 Haskell 程序,这是一个基于 Yesod 框架的 Web 应用程序。
我使用cabal configure && cabal build
. 当我尝试运行可执行文件时,出现以下错误:
-bash: dist/build/MyApp/MyApp: Operation not permitted
我在 OS X Mountain Lion 上安装了 64 位 Haskell 平台(2012.2.0.0)。我原本安装的是32位的版本,但遇到同样的错误,所以我卸载了它并尝试了64位版本。
应用程序编译和链接没有错误或警告。
我什至尝试了http://reviews.cnet.com/8301-13727_7-57374676-263/workarounds-for-quarantine-bug-in-os-x-lion/中描述的修复方法,但没有任何区别。
更新:情节变厚了。源代码树实际上是在一个加密的稀疏包上(我所有的源代码都是)。当我将树复制到我的主目录时,它会编译并运行.
mount 命令不显示noexec选项:
/dev/disk2s9 on /Volumes/Personal (hfs, local, nodev, nosuid, journaled, noowners, quarantine, mounted by grk)
我不确定隔离选项,但我怀疑它来自 Symantec Endpoint Protection(我的雇主要求)。我会尝试为稀疏捆绑禁用它。