今天和大家講講怎么樣將github中的swift源碼編譯到Xcode可以打開的項目:
1,安裝cmake 去官網下載cmake,我下的是目前的最新版本cmake-3.12.0-rc3-Darwin-x86_64.tar.gz,如下圖:
下載完成以后,接著就解壓,會看到這個玩意兒:
把這個拷貝到應用程序目錄下面,接著打開這個應用程序,找到tools->how to install...這一行,會提示你怎樣操作,我選擇的是第二個:
接著可以打開終端了,復制上圖畫圈的sudo這一行到終端執行一下,好啦,cmake客戶端和終端命令都搞定了!
2,安裝ninja(從git下載)
首先創建一個文件夾,并定位到這個文件夾下,如下:
mkdir -p ~/ninja && cd ~/ninja
下載安裝包:
git clone https://github.com/martine/ninja
進入ninja:
cd ninja
編譯ninja:
./configure.py --bootstrap
這里我報了一個錯:
這個錯誤不要慌,是缺少re2c,這個時候只要安裝好re2c就行了,接下來說說一下如何安裝re2c:
進入到這個re2c官網,下載最新的包:我下載的是re2c-1.0.3.tar.gz
下載完成以后解壓,然后用命令行定位到解壓后的文件夾: cd? re2c路徑
也可以打開這個文件夾看一下里面的內容,應該差不多是這個樣子(可以查看對應的readme文件,也可以跟著我的步驟來):
這個時候在命令行這樣做:
./configure
等待命令執行完畢再輸入:
make
等待執行完畢再輸入:
make install
至此,如果一切順利,re2c就安裝完畢了;回頭再來安裝ninja
cd? 定位到你剛才的ninja文件夾:我的是:cd ~/ninja/ninja
這個時候在命令行輸入:./configure.py --bootstrap,如果一切順利,就安裝成功了。這個時候可以在終端輸入:./ninja --version? ? ? 如果終端能顯示版本就說明正常了。
但是有個問題是,這個命令必須制定完整的路徑或者像剛才一樣在當前目錄才可以執行,這個時候我們如果想在任何路徑下只要執行 ninja --version都能看到版本就好了,此時我們可以配置環境變量:使用如下命令(如果在~目錄下有.bash_profile這個文件就不用創建):
touch ~/.bash_profile? ? (創建.bash_profile)
用vi 編輯器打開:
vi ~/.bash_profile
在vi編輯器中進行編輯(按i開啟編輯),輸入以下內容:
export NINJA_HOME=ninja的路徑? ? 我這里是: ~/ninja/ninja
export PATH=$PATH:$NINJA_HOME
編輯完成按esc退出編輯,然后按? ? ?:wq? ? ? 保存并退出編輯器
用這個命令讓環境變量生效: source ./.bash_profile
這樣環境變量就設置成功了,我們測試一下,
cd? /
ninja --version
你會看到出現了ninja的版本號
至此ninja安裝完畢。 附上mac配置環境變量的方法:
3,下載swift在github上的倉庫:可以按照git上的操作的操作進行,這里我說說我自己的操作
首先download項目,存儲在你自己定義的文件夾里面,我是下載到:~/Deskdop/swift-source 里面:
下載成功以后,就進入到剛才那個文件夾,然后解壓,再進入解壓后的目錄:? 執行 utils/update-checkout --clone? 這個命令(https的方式),安靜的等待執行完畢(時間會有一點長,泡一杯咖啡吧),當然也可以用git ssh的方式操作,只不過需要添加github密鑰(參考添加密鑰),這一步完成以后就開始編譯swift源碼了。
至此等待編譯完畢。