在此利用 Msys2 編譯適用於 Windows 10 64 位元環境中的 Fossil SCM.
編譯流程
首先從 Gnuwin32 coreutils 取得視窗環境下執行的 cat 與 grep, 並且確定 sh.exe 位於指令搜尋路徑 (例如, 透過 git/bin 目錄中的 sh.exe), 先編譯 Fossil SCM 附帶的 zlib 後, 再設定 PREFIX = x86_64-w64-mingw32-, 就可順利完成 fossil.exe 的編譯. 在不修改 win/Makefile.mingw 的情況下, 必須與 zlib1.dll 配合才能執行. 若開啟 LIB = -static 設定, 則可以將程式庫納入 fossil.exe 中執行。
取得 fossil clone 原始碼
從 Fossil SCM 倉儲取得原始碼壓縮檔後, 在 wd/fossil 目錄中解開 trunk 最新版本的原始碼, 目前為 Fossil SCM 2.5 版.
fossil clone https://www.fossil-scm.org fossil.fossil cd wd mkdir fossil cd fossil fossil open ./../../fossil.fossil
編譯 zlib
在 MSYS2 環境中編譯 Fossil SCM 時, 必須先編譯 compat/zlib
cd compat/zlib mingw32-make -f win32/Makefile.gcc
編譯 fossil.exe
之後, 再退出 compat/zlib 目錄, 回到 wd/fossil 目錄中, 編輯 win/Makefile.mingw, 設定
PREFIX = x86_64-w64-mingw32- LIB = -static
接著以 mingw32-make -f win/Makefile.mingw 編譯 fossil.exe
根據以上說明所建立的教學用倉儲位於: https://github.com/kmolab/fossil-scm_25