Ошибка привязки Xcode после обновления до версии 8.0

Мой проект не скомпилирован с ошибкой: linker command failed with exit code 1 (use -v to see invocation) and description

ld:.../Xcode/DerivedData/Acoustic-ejrjwtwpmnimpdaazezbknffdbim/Build/Products/Debug-iphonesimulator/Result.framework/Результат скомпилирован с более новой версией языка Swift (3.0), чем предыдущие файлы (2.0) для архитектуры x86_64 скриншот

Проблема с каркасом ReactiveCocoa, я думаю. Он добавляется как подмодуль к моему проекту. Я использую только Objective-C и не могу понять, как решить эту проблему.

Ответ 1

"Вам нужно явно указать флаг" Использовать устаревшую версию Swift Language "в целевом элементе CocoaPod. Это можно сделать, щелкнув проект" Подходы ", нажав на цель RealmSwift, перейдите на вкладку" Настройки сборки "и измените флаг" Да".

Чтобы узнать больше, перейдите сюда

Ответ 2

Вам необходимо обновить CocoaPods до более новой версии, поддерживающей XCode 8 (CocoaPods 1.1.0 или новее):

sudo gem install cocoapods

Затем выполните обновление pod, чтобы исправить ваши зависимости, которые не связаны:

pod update

Удалите папку DerivedData для вашего проекта и перестройте, ошибка связи должна исчезнуть.

Ответ 3

Я столкнулся с той же проблемой, но был связан с другой структурой, не связанной с Realm.

Project → Target → Использовать устаревшую версию языка Swift Да

введите описание изображения здесь

Ответ 4

Я бы всегда рекомендовал обновить ваши проекты, используя предоставленный мастер. Если он не появился, вы можете вручную преобразовать код из меню "Редактирование" > "Преобразовать" > "Текущий синтаксис". Возможно, это поможет.

В противном случае apple предоставляет хорошее руководство по миграции здесь: Переход к Swift 2.3 или Swift 3 из Swift 2.2 Возможно, это поможет.

Этот вопрос уже задавался здесь: не может построить проект с помощью xcode 8 beta 6