首页 > 解决方案 > 标准库的OCaml更改路径

问题描述

我已经使用此处找到的 64 位图形安装程序在 Windows 上安装了 OCaml 。

当我ocamlc -config在 Windows 命令提示符下运行时,它告诉我标准库位于此处:

standard_library_default: C:/cygwin/home/appveyor/.opam/4.12.0+mingw64c/lib
standard_library: C:/cygwin/home/appveyor/.opam/4.12.0+mingw64c/lib/ocaml

但是,该cygwin目录根本不存在,我相信标准库实际上位于

C:\OCaml64\home\MyUser\.opam\4.12.0+mingw64c\lib\ocaml

有什么办法可以改变标准库的路径吗?

标签: cygwinocamlopam

解决方案


您无法覆盖它,standard_library_default因为它存储在二进制文件中,但您可以使用OCAMLLIB环境变量来覆盖standard_library路径。

但很可能您不需要更改它。您应该在 cygwin 终端中运行命令并使用

eval $(opam env)

或者,如果您想使用 Windows 终端,例如cmd.exe您可以使用ocaml-env帮助程序,例如,

:: run cmd.exe
ocaml-env exec -- cmd.exe
:: start utop from the 4.03.0-mingw64 switch
ocaml-env exec --switch=4.03.0-mingw64 -- utop.exe
:: run utop inside ConEmu / Notepad
ocaml-env-win --switch=4.04.0-msvc32 -- "C:\\Program Files\\ConEmu\\ConEmu.exe" -run utop.exe
ocaml-env-win -- "C:\\Program Files\\Notepad++\\notepad++.exe"

推荐阅读