在 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:/cygwin
(C:/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-term
和 utop
都可能無法安裝。請參閱疑難解答部分。
安裝 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
並嘗試重新開啟可執行檔案。