如何使用Xcode为Ubuntu构建Swift完美服务器?
How to build Swift Perfect Server using Xcode for Ubuntu?
所以我知道我们如何为 OSX 构建它,但我们如何在 Linux 上构建完美的服务器 http?有没有一种方法我们可以使用 Xcode 构建源代码,但让它针对 Ubuntu 进行编译?
您不能在 Xcode 中构建 Linux,但是您可以只在 xCode 中开发,然后在 Ubuntu 中构建源代码。在 release-1.0 brunch 中,PerfectLib 和 PerfectServer 都包含 makefile。
查看这些链接中的描述。 PerfectLib-1.0, PerfectServer-1.0
但是在开发过程中,您需要修改 makefile 才能在 linux 上正确构建它。如果您没有那么多经验,这在某些情况下可能会很耗时。
作为替代方案,您可以从目前(2016 年 4 月 25 日)针对 Swift 3.0 4 月 12 日快照构建的 Master 分支中提取。不费吹灰之力,您就可以设置所有依赖项,让 PerfectServer 和处理程序在单个 make
命令中使用 Swift 包管理器构建。
更新:在 Ubuntu 上构建完美的服务器(2016 年 4 月 28 日)
我们首先需要安装依赖集。
sudo apt-get install libssl-dev libevent-dev libsqlite3-dev libcurl4-openssl-dev libicu-dev uuid-dev
PerfectLib 目前(2016 年 4 月 28 日)基于 Swift 3.0 3 月 25 日和 4 月 12 日的快照构建。由于这些版本中几乎没有根本性的变化,因此每个版本都有不同的 PerfectLib 版本。
如果 Swift 3.0 工具链未安装在您的 ubuntu 上,请下载、解压并将其导出到路径:
wget https://swift.org/builds/development/ubuntu1510/swift-DEVELOPMENT-SNAPSHOT-2016-04-12-a/swift-DEVELOPMENT-SNAPSHOT-2016-04-12-a-ubuntu15.10.tar.gz
tar xvf swift-DEVELOPMENT-SNAPSHOT-2016-04-12-a-ubuntu15.10.tar.gz
export PATH=/your/full/path/to/swift-DEVELOPMENT-SNAPSHOT-2016-04-12-a-ubuntu15.10/usr/bin/:"${PATH}"
您无法从 master
分支立即构建 Perfect,因此我对其进行了修改,以便可以将构建过程简化为单个 make
。
根据您的 Swift 3.0 快照执行以下操作:
3 月 25 日快照:
git clone https://github.com/ambientlight/PerfectServer.git
4 月 12 日快照:
git clone -b swift.3.0-april https://github.com/ambientlight/PerfectServer.git
让我们构建它:
cd PerfectServer/
make
cp .build/debug/perfectserver* ./
最后您可以启动 perfectserverhttp 或 perfectserverfcgi 服务器变体:
sudo ./perfectserverhttp
所以我知道我们如何为 OSX 构建它,但我们如何在 Linux 上构建完美的服务器 http?有没有一种方法我们可以使用 Xcode 构建源代码,但让它针对 Ubuntu 进行编译?
您不能在 Xcode 中构建 Linux,但是您可以只在 xCode 中开发,然后在 Ubuntu 中构建源代码。在 release-1.0 brunch 中,PerfectLib 和 PerfectServer 都包含 makefile。 查看这些链接中的描述。 PerfectLib-1.0, PerfectServer-1.0
但是在开发过程中,您需要修改 makefile 才能在 linux 上正确构建它。如果您没有那么多经验,这在某些情况下可能会很耗时。
作为替代方案,您可以从目前(2016 年 4 月 25 日)针对 Swift 3.0 4 月 12 日快照构建的 Master 分支中提取。不费吹灰之力,您就可以设置所有依赖项,让 PerfectServer 和处理程序在单个 make
命令中使用 Swift 包管理器构建。
更新:在 Ubuntu 上构建完美的服务器(2016 年 4 月 28 日)
我们首先需要安装依赖集。
sudo apt-get install libssl-dev libevent-dev libsqlite3-dev libcurl4-openssl-dev libicu-dev uuid-dev
PerfectLib 目前(2016 年 4 月 28 日)基于 Swift 3.0 3 月 25 日和 4 月 12 日的快照构建。由于这些版本中几乎没有根本性的变化,因此每个版本都有不同的 PerfectLib 版本。
如果 Swift 3.0 工具链未安装在您的 ubuntu 上,请下载、解压并将其导出到路径:
wget https://swift.org/builds/development/ubuntu1510/swift-DEVELOPMENT-SNAPSHOT-2016-04-12-a/swift-DEVELOPMENT-SNAPSHOT-2016-04-12-a-ubuntu15.10.tar.gz
tar xvf swift-DEVELOPMENT-SNAPSHOT-2016-04-12-a-ubuntu15.10.tar.gz
export PATH=/your/full/path/to/swift-DEVELOPMENT-SNAPSHOT-2016-04-12-a-ubuntu15.10/usr/bin/:"${PATH}"
您无法从 master
分支立即构建 Perfect,因此我对其进行了修改,以便可以将构建过程简化为单个 make
。
根据您的 Swift 3.0 快照执行以下操作:
3 月 25 日快照:
git clone https://github.com/ambientlight/PerfectServer.git
4 月 12 日快照:
git clone -b swift.3.0-april https://github.com/ambientlight/PerfectServer.git
让我们构建它:
cd PerfectServer/
make
cp .build/debug/perfectserver* ./
最后您可以启动 perfectserverhttp 或 perfectserverfcgi 服务器变体:
sudo ./perfectserverhttp