Построение ошибок библиотек CocoaPods для некоторых симуляторов iOS
Короткая ошибка:
file was built for archive which is not the architecture being linked (i386)
Expanded:
Для некоторых симуляторов я получаю эти ошибки при сборке моего проекта:
ld: warning: игнорирование файла /Users/admin/Library/Developer/Xcode/DerivedData/myApp-ekwldvjyuxwkykbareyvvydbtero/Build/Products/Debug-iphonesimulator/libFSCalendar.a, файл был создан для архива, который не является связываемой архитектурой) i38: /Users/admin/Library/Developer/Xcode/DerivedData/myApp-ekwldvjyuxwkykbareyvvydbtero/Build/Products/Debug-iphonesimulator/libFSCalendar.a ld: предупреждение: игнорирование файла / Users / admin / Library / Developer / Xcode / Derived MyDD ekwldvjyuxwkykbareyvvydbtero / Build / Products /Debug-iphonesimulator/libGBDeviceInfo.a, файл был создан для архива, который не является связываемой архитектурой (i386): /Users/admin/Library/Developer/Xcode/DerivedData/myApp-ekwldvjyuxwydbareo /Debug-iphonesimulator/libGBDeviceInfo.a ld: предупреждение: игнорирование файла / Пользователи / admin / Библиотека / Разработчик / Xcode / DerivedData / myApp-ekwldvjyuxwkykbareyvvydbtero/Build/Products/Debug-iphonesimulator/libSCLAlertView был создан для создания файла-файла-Objective-Objective-Objective-Objective-Objective-Object-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Objective-Object которая не является архитектурой б Связанный (i386): /Users/admin/Library/Developer/Xcode/DerivedData/myApp-ekwldvjyuxwkykbareyvvydbtero/Build/Products/Debug-iphonesimulator/libSCLAlertView-Objective-Ca ld: предупреждение: игнорирование файла / Users / admin / Library / Developer /Xcode/DerivedData/myApp-ekwldvjyuxwkykbareyvvydbtero/Build/Products/Debug-iphonesimulator/libSSKeychain.a, файл был создан для архива, который не связан с архитектурой (i386): / Users / admin / Library / Developer / Xcode / Derivedata myApp-ekwldvjyuxwkykbareyvvydbtero/Build/Products/Debug-iphonesimulator/libSSKeychain.a Неопределенные символы для архитектуры i386: "_OBJC_CLASS_$_FSCalendar", на которую ссылаются: objc-class-ref в VCalendarView.o ": _ _ $ _ _ _ _ _ _ _ _JJ_CJ_JC_JC class-ref в VEMailView.o objc-class-ref в DataClass.o "_OBJC_CLASS_$_SCLAlertView", на который ссылается: objc-class-ref в VAlerts.o "_OBJC_CLASS_$_SCLAlertViewBuilder", на который ссылается: objc-class-ref в VA.o "_OBJC_CLASS_$_SCLAlertViewShowBuilder", на который ссылается: objc-cl ass-ref в VAlerts.o "_OBJC_CLASS_$_SSKeychain", на который ссылаются из: objc-class-ref в VDescriptionView.o ld: символ (ы) не найден для архитектуры i386 clang: error: сбой команды компоновщика с кодом выхода 1 (используйте - v чтобы увидеть вызов)
Он работает, скажем, для симулятора iPhone 6 Plus 9.3.0, но не для iPhone 5s. Зачем? у меня есть $(inherited)
для параметра Другие флаги компоновщика.
2 ответа
Я нашел решение.
Я удалил каталог/Users/admin/Library/Developer/Xcode/DerivedData/myApp-ekwldvjyuxwkykbareyvvydbtero/Build
(щелкните правой кнопкой мыши библиотеку CocoaPods > Показать в Finder, затем найдите ее родительский каталог) и перестройте все заново. Xcode воссоздал все библиотеки, которые работают прямо сейчас. Все настройки сборки такие же, как по умолчанию.
Я решил это, удалив DerivedData
каталог.
шаги:
В Xcode, перейдите в строку меню → Окно → Проекты.
В окне " Проекты" выберите проект слева.
Нажмите кнопку Удалить... для получения производных данных. Когда вас попросят подтвердить, нажмите " Удалить".
Перестройте проект.
Для Xcode 8, смотрите этот Q & A:
Как удалить производные данные в Xcode 8?