Как собрать Swift Perfect Server, используя Xcode для Ubuntu?

Итак, я понимаю, как мы можем построить его для OSX, но как нам создать идеальный сервер http в Linux? Есть ли способ, которым мы можем собрать исходный код, используя Xcode, но скомпилировать его для Ubuntu?

1 ответ

Решение

Вы не можете встроить Xcode для Linux, однако вы можете просто разработать в xCode и затем создавать исходные коды в Ubuntu. В выпуске версии 1.0 и PerfectLib, и PerfectServer содержат make-файлы. Посмотрите описание в этих ссылках. PerfectLib-1.0, PerfectServer-1.0

Однако во время разработки вам нужно будет изменить make-файлы, чтобы правильно собрать их на Linux. В некоторых случаях это может занять много времени, если у вас нет такого большого опыта работы с ними.

В качестве альтернативы вы можете получить ветку Master, которая в данный момент (25 апреля 2016 г.) построена на Swift 3.0 Snapshot 12 апреля. Без особых усилий вы можете настроить все свои зависимости, чтобы иметь PerfectServer и обработчики для сборки с Swift Package Manager в одном make команда.

Обновление: Сборка Perfect Server в Ubuntu (28 апреля 2016 г.)

Сначала нам нужно установить набор зависимостей.

sudo apt-get install libssl-dev libevent-dev libsqlite3-dev libcurl4-openssl-dev libicu-dev uuid-dev

PerfectLib на данный момент (28 апреля 2016 г.) строится с использованием снимков Swift 3.0 25 марта и 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}"  

Вы не сможете построить Perfect из коробки из master ветвь, поэтому я внес в нее изменения, чтобы процесс сборки можно было упростить до make, В зависимости от вашего снимка Swift 3.0 сделайте следующее:

Снимок за 25 марта:

git clone https://github.com/ambientlight/PerfectServer.git

Снимок за 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
Другие вопросы по тегам