在Ubuntu服务器配置Swift编译环境

安装Ubuntu

购买vps, 安装Ubuntu, 请安装以下3种os中的任意一种. 我购买的vps上, 最新并且最兼容swift的是Ubuntu16.04 64位的.

  • Ubuntu 14.04, 16.04 or 16.10 (64-bit)

配置Swift编译环境

终端连接vps

打开终端, 输入 ssh root@vps的ip地址, 输入vps的密码(vps自动生成的), 比如 ssh [email protected]

第一次连接会出现一个输入yes和no的询问, 输入yes回车继续

当终端的开头变的和之前不一样的时候, 就是连接成功了, 比如我的, root@swift:~#

QQ20171007-094122

配置必要环境

输入以下命令安装必须的库

1
sudo apt-get install openssl libssl-dev uuid-dev

现在, 你已经用终端和vps连接成功了, 接下来创建两个文件夹, 分别存放你的swift代码和swift工具的编译环境

查看当前文件夹

1
2
ls 查看当前目录下的文件夹, 不显示隐藏文件
ls -a 查看当前目录下的文件夹, 显示隐藏文件

分别输入以下命令, 创建Code文件夹和Swift文件夹, 前者用来存放代码, 后者用来存放swift的编译环境(文件夹名字你可以自己取)

1
2
mkdir Code
mkdir Swift

输入 ls -a 继续查看文件夹

QQ20171007-094244

cd Swfit 进入文件夹, 输入 sudo apt-get install clang libicu-dev 安装必要的工具, 出现问你是否继续的, 直接输入 y 继续

QQ20171007-094907

安装完成

QQ20171007-094921

配置swift编译工具

进入swift官方网站, 获取下载地址, https://swift.org/download/

我选择的是Releases版本, Swift 4.0, Ubuntu 16.04版本, 版本和你的vps系统版本对应即可. 选中Ubuntu 16.04, 右键获取链接地址, https://swift.org/builds/swift-4.0-release/ubuntu1604/swift-4.0-RELEASE/swift-4.0-RELEASE-ubuntu16.04.tar.gz 记录下来.

在对应的Ubuntu 16.04下面, 选中Signature, 继续获取Signature的地址, 继续记录下来.

第一个获取的是swift编译环境的地址, 第二个获取的是对应编译环境的签名地址.

在终端中输入 wget 刚刚获取的swift编译环境的地址

wget https://swift.org/builds/swift-4.0-release/ubuntu1604/swift-4.0-RELEASE/swift-4.0-RELEASE-ubuntu16.04.tar.gz

QQ20171007-095254

在终端中输入 wget 签名地址

QQ20171007-095749

等文件都下载完成后, 继续输入,

1
2
3
4
5
6
gpg --keyserver hkp://pool.sks-keyservers.net \
--recv-keys \
'7463 A81A 4B2E EA1B 551F FBCF D441 C977 412B 37AD' \
'1BE1 E29A 084C B305 F397 D62A 9F59 7F4D 21A5 6D5F' \
'A3BA FD35 56A5 9079 C068 94BD 63BC 1CFE 91D3 06C6' \
'5E4D F843 FB06 5D7F 7E24 FBA2 EF54 30F0 71E1 B235'

QQ20171007-095335

输入ls查看当前文件夹, 文件夹中有两个, 一个是swift编译工具的压缩包状态, 一个是签名文件.

从终端中复制签名文件的名字, swift-4.0-RELEASE-ubuntu16.04.tar.gz.sig 在前面加上 gpg --verify, 变成 gpg --verify swift-4.0-RELEASE-ubuntu16.04.tar.gz.sig, 进行验证, 出现和图上一样的, 表示没问题.

QQ20171007-100114

输入 tar xzf 包名, 进行解压.

QQ20171007-100400

再次输入ls, 会发现多了一个文件夹.

进入刚刚解压出来的文件夹里面, 再进入usr, 进入bin, 输入pwd, 获取全路径, 记录下来.

QQ20171007-100516

输入cd ~进入根目录, 输入ls -a, 输入vi .profile打开文件

QQ20171007-100913

在当前文件中加入export PATH=刚刚获取的全路径:"${PATH}", 不要加到最后面一句命令的后面了. 否则就不能正常生效.把刚刚加入进去的那句命令复制(后面要用)

QQ20171007-101022

退出并保存.profile文件, 粘贴刚刚赋值的命令, 执行.

QQ20171007-101104

输入swift --version, 出现正确版本号, swift编译环境搭建完毕.

QQ20171007-101220

在vps上编译项目

继续查看当前文件夹, 进入Code文件夹, 按照之前在本地快速搭建服务器的方法, 再克隆并运行一次.
swift build的时候, 如果出现和图中一样的error, error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory, 输入sudo apt-get install libcurl3, 安装libcurl3, 继续后续步骤, 编译成功后, 使用服务器地址:8181访问, 网页中出现Hello, world!, 也就美滋滋了~

QQ20171007-101826