很多時候iOS開發完畢需要接入CI中,而很多CI是基於Linux的,需要在Linux平台安裝Swift和Swiftlint,下面就是針對這兩個軟件的安裝步驟。
Swift安裝
環境
系統:Ubuntu 16.04
下載Release包
在Swift官方網站下載Release包。
官方地址:https://swift.org/download/#releases
以5.0.2的Realse下載地址為例:
https://swift.org/builds/swift-5.0.2-release/ubuntu1604/swift-5.0.2-RELEASE/swift-5.0.2-RELEASE-ubuntu16.04.tar.gz
通過Linux的命令行下載
通過wget
下載工具
wget https://swift.org/builds/swift-5.0.2-release/ubuntu1604/swift-5.0.2-RELEASE/swift-5.0.2-RELEASE-ubuntu16.04.tar.gz
如果斷網續傳,可以使用如下命令:
wget -c https://swift.org/builds/swift-5.0.2-release/ubuntu1604/swift-5.0.2-RELEASE/swift-5.0.2-RELEASE-ubuntu16.04.tar.gz
下載完成后進行解壓:
tar xzf swift-5.0.2-RELEASE-ubuntu16.04.tar.gz
解壓后的路徑:
配置PATH環境變量
將解壓后的文件地址的swift-5.0.2-RELEASE-ubuntu16.04/usr/lib
設置為系統路徑
export PATH=/絕對路徑/swift-5.0.2-RELEASE-ubuntu16.04/usr/bin/:"${PATH}"
驗證
通過swift --version
命令驗證一下:
驗證通過以后記得將Path加入~/.bash_profile
文件中
到這一步Swift在Linux上就安裝好了,如果需要查看源碼,還需要安裝源碼,可以在
https://github.com/apple/swift
中找到安裝方法,這里就不展開了。
Swiftlint安裝
環境:
系統:Ubuntu 16.04
Swfit: swift-5.0.2-RELEASE-ubuntu16.04
命令行安裝
使用如下命令:
git clone https://github.com/realm/SwiftLint.git
cd SwiftLint
swift build -c release --static-swift-stdlib
安裝完成后的路徑
配置PATH環境變量
export PATH=/絕對路徑/SwiftLint/.build/x86_64-unknown-linux/release/:"${PATH}"
配置SourceKit
SwiftLint檢查代碼格式是基於Swift的SourceKit的,文件位於usr/lib/libsourcekitdInProc.so
,需要將其復制到realse路徑下:
cp /絕對路徑/swift-5.0.2-RELEASE-ubuntu16.04/usr/lib/libsourcekitdInProc.so /絕對路徑/SwiftLint/.build/x86_64-unknown-linux/release/
驗證
通過swiftlint version
命令驗證一下:
驗證通過以后記得將Path加入~/.bash_profile
文件中
可能會遇到的問題
安裝后可能遇到編譯失敗的情況,可以嘗試安裝如下命令:
apt-get install -y clang libblocksruntime0 libcurl4-openssl-dev
其他可能的問題,可以參考Swiftlint的Github關於Linux的issues
https://github.com/realm/SwiftLint/issues/732
Linux環境變量PATH說明
修改Linux環境變量PATH有三種方法,根據情況需要自己選擇
1、export PATH=/絕對路徑/:"${PATH}" (推薦)
使用這種方法,只對當前會話有效,也就是說每當登出或注銷系統以后,PATH設置就會失效
2、vi ~/.bash_profile (推薦)
使用這種方法,只對當前用戶有效,切換登錄用戶以后,PATH設置就會失效
3、vi /etc/profile
使用這種方法,對所有用戶有效,可能會給系統帶來安全性問題。