【发布时间】:2016-03-25 23:04:55
【问题描述】:
所以我知道我们如何为 OSX 构建它,但是我们如何在 Linux 上构建完美的服务器 http 呢?有没有办法我们可以使用 Xcode 构建源代码,但让它为 Ubuntu 编译?
【问题讨论】:
标签: xcode swift ubuntu perfect
所以我知道我们如何为 OSX 构建它,但是我们如何在 Linux 上构建完美的服务器 http 呢?有没有办法我们可以使用 Xcode 构建源代码,但让它为 Ubuntu 编译?
【问题讨论】:
标签: xcode swift ubuntu perfect
您不能在 Xcode for Linux 中构建,但是您可以在 xCode 中开发,然后在 Ubuntu 上构建源代码。在 release-1.0 brunch 中,PerfectLib 和 PerfectServer 都包含 makefile。 看看这些链接中的描述。 PerfectLib-1.0, PerfectServer-1.0
但是,在开发过程中,您需要修改 makefile 才能在 linux 上正确构建它。如果您没有太多经验,这在某些情况下可能会很耗时。
作为替代方案,您可以从目前(2016 年 4 月 25 日)针对 Swift 3.0 April 12 Snapshot 构建的 Master 分支中提取。不费吹灰之力,您就可以在单个 make 命令中设置所有依赖项以使用 Swift 包管理器构建 PerfectServer 和处理程序。
我们首先需要安装依赖集。
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 版本。
如果你的 ubuntu 上没有安装 Swift 3.0 工具链,请下载、解压并导出到路径:
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
【讨论】: