• 單一 Makefile 完成 kernel 編譯

Makefile 整合語法

若要在 Makefile 中執行其他目錄的 Makefile 步驟,可以使用下面的語法:

    $(MAKE) -C go/to/another/dir/ -f makefile_name build_or_clean_command

其中,各部分介紹如下:

  1. $(MAKE) 變數為啟動此腳本的 Make 程式(不同環境不見得為 make)。

  2. -C 標籤為 Make 程式的工作目錄,之後所有動作會先移至此目錄中執行。

  3. 如果檔案名稱不叫 Makefile,-f 可以指定額外名稱。

  4. 最後,指定 build 或 clean 等其他腳本目標。

針對指令的記號如下:

  1. @ 可以將此指令的下令訊息隱藏,如 echo 不想顯示命令時的標記,可以使用 @echo "test text"

  2. - 可以在指令失敗時回傳提醒,並且會繼續執行之後的指令,如 -mv exefile exe_file 可以防止重新命名失敗。

Pyslvs 統一編譯流程

Pyslvs 已經將兩個 kernel 的原始碼納入,因此不再分辨系統版本。

通過 Readme 的設定,Windows 安裝 SWIG 後將 Python 設定完成後便可完成編譯流程,Ubuntu 只需安裝 SWIG 和 python3-dev 開發包即可。

已通過 Travis-Ci 服務測試 Python 3.4, 3.5, 3.6 編譯成功。

不過 3.6 目前尚未支援 PyInstaller,因此先使用其開發版本編譯。


Comments

comments powered by Disqus