Skip to content

鼠鬚管主程式編譯

onion edited this page Nov 21, 2022 · 59 revisions

編譯環境準備

  • 下載安裝 Xcode

    https://itunes.apple.com/tw/app/xcode/id497799835?mt=12

  • 安裝 Xcode Command Line Tools

    xcode-select --install
  • 安裝 Homebrew

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
  • Homebrew 安裝 cmake、git 編譯工具

    brew install cmake git
  • 需 Python,Mac 原生已有

編譯

  • 從 GitHub 獲取檔案

    git clone --recursive https://github.com/rime/squirrel.git
  • 修正更新版錯誤(舊版不用)

    下載最新 librime 程式碼

    git clone --recursive https://github.com/rime/squirrel.git

    刪除 squirrel 資料夾中的 librime 資料夾,置換上列新下載的 librime 資料夾到 squirrel 內。

    於 squirrel 資料夾該層置換新修正的 Makefile 和 Squirrel.xcodeproj 內 project.pbxproj 兩個檔案。

    上述右鍵另存新檔並置換 Makefile 和 project.pbxproj。其修正 squirrel 對新舊版 librime 檔案路徑連結之不同,舊版多在 thirdparty 底下,新版則否。

  • 獲取 librime 插件檔案

    移到 squirrel 資料夾內,獲取插件檔案

    librime-charcode 插件,編譯後只能本機使用?!且需特別設定。參考一參考二參考三參考四。不推薦附加,因 lua 也可做出相同功能替代。

    cd squirrel
    bash librime/install-plugins.sh rime/librime-sample
    bash librime/install-plugins.sh lotem/librime-octagram
  • 獲取 librime-lua 插件檔案(沒使用可跳過,舊版 librime 建議不要直接附加 librime-lua,也跳過)

    已替換 librime 之 librime-lua 插件可直接附加!如果不替換 librime 資料夾,為舊分支 librime 核心,附加 librime-lua 會有問題,可先不附加,單獨編譯最新 librime 核心,附加 librime-lua 可成功。再替換核心即可。參考

    bash librime/install-plugins.sh hchunhui/librime-lua

    獲取 librime-lua 缺少之分支檔案

    cd ~/squirrel/librime/plugins/lua
    git clone https://github.com/hchunhui/librime-lua.git -b thirdparty --depth=1 thirdparty
  • 修正源碼失效之網址(如果已經置換新 librime ,可忽略不用修正)

    於文件 squirrel/librime/install-boost.sh 把以下源碼:

    download_url="https://dl.bintray.com/boostorg/release/${boost_version}/source/${boost_tarball}"

    修改為:

    download_url="https://boostorg.jfrog.io/artifactory/main/release/${boost_version}/source/${boost_tarball}"

  • 核心 librime 構建 boost

    cd ~/squirrel
    export BUILD_UNIVERSAL=1

    沒有更換新 librime 用此

    make -C librime xcode/thirdparty/boost
    export BOOST_ROOT="$(pwd)/librime/thirdparty/src/boost_1_75_0"

    已更換新 librime 用此

    make -C librime xcode/deps/boost
    export BOOST_ROOT="$(pwd)/librime/deps/boost_1_78_0"
  • 完成編譯

    export BUILD_UNIVERSAL=1
    make deps
    make

    如要編譯指定版本可使用:

    for Mac computers with Apple Silicon make ARCHS='arm64'

    for Intel-based Mac make ARCHS='x86_64'

  • 編譯後 squirrel 主程式位置

    /Users/〔使用者名稱〕/squirrel/build/Release/Squirrel.app

替換更新 librime 核心

  • 沒使用 librime-lua 可略過,但推薦!

  • 已替換新 librime,且前面已附加 librime-lua,可略過!

  • 替換和自行編譯方法請見 鼠鬚管核心 librime 編譯,不自行編譯可直接用 官方編譯 librime 核心 替換

    推薦自行編譯,librime 核心和 librime-lua 已有更版

補充插件缺少檔案

分享主程式問題

  • 上傳到網路空間再下載分享給他人,使用時,可能遇到 Mac 提示檔案損毀

  • 於使用方,其終端機輸入以下解決

    xattr -r -d com.apple.quarantine /Library/Input Methods/Squirrel.app
    

    路徑位置不同時,刪除後面路徑,App 拖拉進終端機,即可加入其路徑

    可先修改 app 再放入 /Library/Input Methods/

參考連結

Clone this wiki locally