在 Windows 上安裝(本機)

前提

這些說明顯示了在 Windows 中安裝本機 OCaml 二進位制檔案的過程。如果你的作業系統是 Windows 10 (Insider Preview) build 14316 或更高版本,你也可以在 Windows 上的 Ubuntu 上通過 Bash安裝 OCaml。在這種情況下,請按照說明在 Ubuntu 上安裝 OCaml。

安裝 OCaml 和 Opam

下載 OCaml 官方發行版 。它包含 OCaml 編譯器和 Opam 資料包管理器。假設你已經在 C:/OCaml 中安裝了該軟體。為了確保你已經正確安裝了 OCaml open cmd.exe 並輸入 ocaml

如果你看到訊息'ocaml' is not recognized as an internal or external command, operable program or batch file,則需要將 C:/OCaml/bin 新增到路徑(環境變數)。

將 OCaml 二進位制檔案新增到路徑

Control Panel > System and Security > System > Advanced system settings (on the left) > Environment Variables 然後在 System Variable 選項卡中選擇 Path,然後選擇 Edit

C:/OCaml/bin; 新增到列表中。

安裝 Cygwin

沒有 Cygwin 你就不能使用 Opam。事實上,如果你試圖在 cmd.exe 中開啟 Opam 輸入 opam,它會顯示一條訊息:Fatal error: exception Unix.Unix_error(20, "create_process", "cygcheck")

下載 Cygwin 並啟動安裝程式。請務必檢查以下包裹:

  • automake 的
  • diffutils 的
  • libreadline
  • 使
  • M4
  • mingw64-x86_64 的 -GCC 核心
  • mingw64-x86_64 的 -GMP
  • mingw64-x86_64 的,OpenSSL 的
  • mingw64-x86_64 的 -pkg 配置
  • mingw64-x86_64 的 -sqlite3 的
  • 補丁
  • rlwrap
  • 拉開拉鍊
  • wget 的

假設你已經在 C:/cygwinC:/cygwin64 for 64bit 版本)中安裝了該軟體。開啟 cmd 並鍵入 wget(或 C:/cygwin/bin 中存在的可執行檔案之一)以檢查是否可以使用 Cygwin 可執行檔案。如果可執行檔案無法開啟,請將 C:/cygwin/bin 新增到路徑(環境變數)。

配置 Opam

開啟 cmd.exe 並鍵入 opam init 以配置 Opam。

然後安裝 ocamlfind(OCaml 編譯器的一部分)

opam install ocamlfind
opam config env

檢查是否安裝了 ocamlfind,在 cmd.exe 中輸入。

命令 opam config env 用於將 opam 的可執行檔案目錄新增到環境路徑。如果退出後你無法再訪問 ocamlfind,你可以手動新增它,新增到以下行的路徑:C:/Users/<your user>/Documents/.opam/system/bin/

安裝包

使用命令 opam install xyz 通過 Opam 安裝軟體包,其中 xyz 是軟體包的名稱。

安裝 UTop

嘗試執行命令 opam install utop。如果沒有錯誤,則鍵入 utop 將開啟可執行檔案。

如果你看到了這條訊息

[ERROR] The compilation of zed failed at "ocaml setup.ml -build".

你必須手動安裝單個包。再試一次輸入:

opam install zed
opam install lambda-term
opam install utop

lambda-termutop 都可能無法安裝。請參閱疑難解答部分。

安裝 Core

你可以用 opam install core 安裝 core 包。在 Windows 64 位版本(和 64 位 Cygwin)上,你將看到以下錯誤:

[ERROR] core is not available because your system doesn't comply with os != "win32" & ocaml-version = "4.02.3".

疑難解答:無法建立常規檔案

如果名稱為 xyz.10.1 的軟體包無法安裝(其中 xyz 是軟體包的名稱,10.1 其版本),則顯示以下訊息:

install: cannot create regular file '/cygdrive/c/Users/<your user>/Documents/.opam/system/bin/<something>': File exists

你必須進入這個目錄:

C:\Users\<your user>\Documents\.opam\repo\default\packages\<xyz>\<xyz.10.1>\files 

並刪除檔案 xyz.10.1.install

疑難解答:無法載入共享庫

如果你試圖開啟一些 Opam 的包(例如:utop),你會看到這個錯誤:

Fatal error: cannot load shared library dlllwt-unix_stubs
Reason: The specified module could not be found.

再次執行 opam config env 並嘗試重新開啟可執行檔案。