未绑定的图形模块



运行

open Graphics;;

在OCaml中,返回一个错误,表示它是一个未绑定的模块。在终端(ocaml)中运行它会返回相同的结果。

这是否意味着我的图形模块没有安装OCaml软件包?如果是,如何安装模块?

关于费多拉。

此错误也经常出现在Mac OS X上。使用Homebrew,此模块在安装时默认禁用,因此brew install ocaml不会安装图形模块,可能是由于XQuartz依赖关系。

如果您运行brew info ocaml,它会告诉您有一个标志,即--with-x11,它将"与图形模块一起安装"。因此,要安装/重新安装ocaml,您必须运行:

brew install Caskroom/cask/xquartz
brew [re]install ocaml --with-x11

最后,请记住检查正在运行的ocaml实例是否是/usr/local/Cellar/objective-caml/x.yy.z[_w]/bin中的实例,如果不是,则将该url预先添加到PATH环境变量中。还记得在安装XQuartz后重新启动计算机。

默认情况下,图形模块未就绪。您需要手动加载它。在顶层:

$ ocaml
       OCaml version blahblah
# #load "graphics.cma";;
# open Graphics;;

或者您可以在命令行指定:

$ ocaml graphics.cma
       OCaml version blahblah
# open Graphics;;

我不知道Fedora,但如果以上失败,图形并没有真正安装在您的环境中。

最新更新