所以我给创建 Quipper 的教授之一 Peter Selinger 发了电子邮件。
我唯一需要做的就是在 MSYS 内部:
ghci -iC:/quipper -iC:/quipper/quipper
这会正确地遵守所有内容,并且文件可以正常运行。
这是他给我的电子邮件:
亲爱的-----,
感谢您的来信。让我看看能不能帮上忙。
您是否按照自述文件中的说明进行操作?在“建筑
各种算法和程序”,指令是运行
“制作”。这将在“测试”目录中构建所有测试
自动。
接下来,要编译 Quipper 程序,您应该使用“quipper”
位于 quipper/scripts 中的脚本。它就像“ghc”一样工作,
除了它自动包含正确的目录
搜索路径中的 Quipper 文件。在 Windows 上,您将使用
“quipper.bat”。
Quipper 并不是真的要以交互方式运行,即从 ghci 运行。
但是,如果您确实需要以交互方式运行 Quipper,我建议
使用“quipperi”脚本,也在 quipper/scripts 中。这也将
正确设置加载路径。在 Windows 中,使用“quipperi.bat”。
最后,如果您需要包含来自 ghci 的 Quipper 东西,但对于某些
原因不能或不想使用 quipperi 脚本,您需要
使用“-i”选项指定这些目录,例如
ghci -iC:/quipper -iC:/quipper/quipper
可能是在 Windows 中,您需要使用“\”而不是“/”,但我
不确定这是否有必要。
我希望这会有所帮助,--彼得
当使用 ghc 编译和 exe 时,请确保包含以下命令:
-iC:/quipper -iC:/quipper/quipper.
如果您按照 Selinger 教授的建议使用 quipper 脚本,则在 MSYS 内部执行以下操作:
导航到保存所有 Quipper 文件的文件夹,这是我的情况:
cd C:/quipper/quipper/scripts
然后输入 quipper 和你的文件在 MSYS 中的位置来编译一个 exe,如下所示:
quipper C:/quipper/tests/And_gate.hs
该文件将编译并且应该像这样打印更新:
[1 of 22] Compiling Libraries.Typeable (......
[2 of 22] Compiling Libraries.Tuple (......
等等。
exe(在本例中为And_gate.exe)将位于编译它的文件夹(C:/quipper/tests)中。您需要将其移动到包含 quipper/scripts 中的 acroread.bat 的文件夹中才能正常工作。