ninja是一個小型構建系統,專一於速度,和經常使用的make相似,有一些軟件就是基於ninja編譯構建的,好比clickhouse數據庫就須要依賴ninja,由於最近在研究clickhouse,須要依賴於gcc 7,gtest,ninja等一些組件,因此單獨拿出來這些組件記錄安裝過程,這樣會更清晰一些.html
ninja須要依賴於re2c,不然編譯是會報錯,re2c是一款語法分析器,官網地址是:http://re2c.org/,下載頁面的安裝說明都在:http://re2c.org/install/install.html,這裏下載最新的1.0.3版本安裝git
安裝re2c:github
tar -xvzf re2c-1.0.3.tar.gz cd re2c-1.0.3/ ./autogen.sh ./configure make make install
這樣就安裝完畢了,由於re2c做爲基礎依賴,因此這裏採用默認安裝,上面的安裝說明頁面也給出了詳細的安裝細節.數據庫
而後能夠安裝ninja了,ninja官網地址:https://ninja-build.org/,github倉庫地址:https://github.com/ninja-build/ninja,能夠從github倉庫克隆項目切換到release分支或者下載release包,目前最新版是1.8.2,安裝過程以下:bootstrap
解壓:ui
unzip ninja-1.8.2.zip cd ninja-1.8.2/
而後github首頁上有安裝的命令:spa
如今能夠執行 ./configure.py --help 查看幫助,直接執行 ./configure.py --bootstrap 進行編譯,編譯完成以後,當前目錄下會有ninja的可執行文件,執行 ./ninja -h 能夠查看幫助code
ninja比較精簡,只須要一個可執行文件便可,如今能夠作軟鏈或者複製到/usr/bin下面就能夠直接調用了,好比: cp ninja /usr/bin/ 而後能夠直接使用 ninja 命令,這樣就安裝好了. htm