Как построить Realm с помощью Swift 2.3?

Я уже поменял toolchain на 2.3

экспорт PATH=/ Приложения /Xcode-beta.app/ Содержание / Разработчик / Наборы инструментов /Swift_2.3.xctoolchain/usr/bin:"${PATH}"

И сделал

Откройте проект Xcode -> нажмите на проект Realm -> цель RealmSwift -> вкладку "Настройки сборки" -> установите для параметра "Использовать версию Legacy Swift Language" значение "Да" (для сборки Swift 2.3) или "Нет" (для сборки Swift 3).

как говорит область сборки для Swift 3 и Xcode 8.

Но то, что я получаю, это все еще версия Swift 3.0.

Любая идея?


Я посмотрел в build.sh и обнаружил, что путь экспорта не работает, как в xcrun swift, который использовался сферой для получения быстрой версии, он все еще был 2.2 или 3.0, в зависимости от того, какой набор инструментов использовался.

2 ответа

Решение

Чтобы построить Realm из главной ветки с помощью Swift 2.3, установите REALM_SWIFT_VERSION переменная среды для 2.3 при строительстве. Например, чтобы построить для OS X:

REALM_SWIFT_VERSION=2.3 sh build.sh osx

Сценарии сборки Realm будут определять, какую версию Xcode использовать, основываясь на значении REALM_SWIFT_VERSION переменная окружения, поэтому нет необходимости изменять ваш PATH переменная.

Я выбрал ответ @bdash как лучший. Однако, если вы хотите продолжать использовать swift 2.3 в командной строке. Ты можешь сделать

export TOOLCHAINS=com.apple.dt.toolchain.Swift_2_3

затем используйте

sh build.sh osx-swift

Ответ @bdash влияет только на область. Поэтому я думаю, что это лучше, чем у меня. Мой ответ вдохновлен Китом Смайли, который указал, что я мог бы использовать

xcrun --toolchain "com.apple.dt.toolchain.Swift_2_3" swiftc -v

чтобы получить 2,3 работы.

информация о цепочке инструментов находится в /Applications/Xcode-beta.app/Contents/Developer/Toolchains/Swift_2.3.xctoolchain/ToolchainInfo.plist

Другие вопросы по тегам