Я пытаюсь добавить фреймворк в свой проект IOS, но при сборке я всегда получаю одно и то же сообщение:
ld: рамки не найдены
clang: error: сбой команды компоновщика с кодом выхода 1 (используйте -v, чтобы увидеть вызов)
Я попытался удалить свой Pods
каталог и затем запустить, pod install
я открываю, .xcworkspace
как это написано в журналах установки pod, я очищаю проект на xcode, а затем пытаюсь собрать, но он не работает ..
Мой подфайл выглядит так:
xcodeproj '/Users/guillaume/project/Mobile/iOS/FoodPin/FoodPin.xcodeproj'
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
pod 'SwiftHTTP', '~> 0.9.2'
Моя версия xcode 6.3.1
Спасибо,
libpods.a
находится в ваших «Связанных структурах и библиотеках» вашей цели? И в ваших фазах сборки тоже?Ответы:
В
Project Navigator
папке уPods
меня былPods.framework
там, который был красным. Это также присутствовало вLinked Frameworks and Libraries
. Я удалил обе ссылки, и ошибка исчезла.TL; DR
Удалить
Pods.framework
в:Pods
Linked Frameworks and Libraries
источник
use_frameworks!
а затем без и , возможно,Pods.framework
был должным образом не удаляется во времяpod install
. Может быть ошибка в Cocoapods.Обычно это вызвано открытием файла .xcodeproj вместо .xcworkspace.
Когда вы запускаете 'pod install' в первый раз, он создаст файл .xcworkspace, который включает ваш оригинальный .xcodeproj и проект Pods. Вам нужно будет закрыть ваш .xcodeproj и вместо этого открыть .xcworkspace.
Это распространенная проблема при создании проекта с помощью нового мастера проектов Xcode - я часто забываю, что я не нахожусь в рабочей области, которая необходима для правильной связи Cocoapods.
источник
Xcode 9, 10, 11, 11,5
установить https://github.com/CocoaPods/cocoapods-deintegrate
затем
источник
Я очистил эту ошибку, удалив красные
.framework
файлы, которые находились в папкеFrameworks
вproject navigator
. Я думаю, что это также автоматически удалил соответствующие красные записи вLinked Frameworks and Libraries
разделеGeneral
настроек.Я чистил / переустанавливал стручки, чтобы исправить другую проблему. Возможно, эти красные фреймворковые файлы и записи были просто остатком от предыдущей установки модуля?
источник
Для тех, кто находит эту проблему. Я использую NativeScript и получил ту же ошибку.
Это произошло потому, что я открыл файл .xcodeproj, но мы должны открыть проект с помощью файла .xcworkspace.
источник
Это случилось со мной после обновления моего Podfile и выполнения обновления pod.
По какой-то причине у меня был файл фреймворка «Pods_ [ProjectName]». Под моим проектом в «Цели»> «Общие»> «Связанные фреймворки и библиотеки».
Удаление этого, а затем очистка / восстановление исправили проблему.
источник
У меня была похожая проблема как
Это было решено путем удаления следующего. Перейдите к цели OneSignalNotificationServiceExtension> Фазы сборки> Связать двоичные файлы с библиотеками и удалите Pods_OneSignalNotificationServiceExtension.framework. Надеюсь, это поможет. Приветствия.
источник
Pods_OneSignalNotificationServiceExtension.framework
меня часто преследуют связанные структуры и библиотекиOneSignalNotificationServiceExtension
цели.pod install
, это случайно.*.xcodeproj/*.xcworkspace
через*.xcworkspace
мой сценарий автоматизации vsts .yml. Я знаю лучше с графическим интерфейсом, но все еще привыкаю к требованиям в области написания скриптов.Я получал эту ошибку, потому что я переименовал свой проект и изменил имя проекта в файле pod, но мой проект ссылался на старое имя, которого не было, и вызывал эту ошибку. Я избавляюсь от этого
с последующим
источник
Вы должны удалить свой проект некоторый файл как эта картина.
источник
Просто удалите .framework из списка «Ваш проект-> Общие-> Связанные рамки и библиотеки».
источник
Это случилось со мной , потому что я изменил
Deployment Target
вGeneral
но забыл изменитьDeployment Target
инPods > General
.источник
В моем случае я могу построить его на устройствах и симуляторе, но при архивировании возникают те же ошибки. Чтобы решить это, я должен
Pods.framework
Pods-<project-name>.framework
встроенВы найдете настройки в TARGETS -> Связанные фреймворки и библиотеки.
источник
Шаг 1
Шаг 2
Шаг 3
Step4
Единственное, что вы можете захотеть сделать, - это включить некоторые библиотеки, которые вы использовали ранее. Вы можете сделать это, просто перетащив любые папки из папок pods в ваш проект (я предпочитаю помещать их в мою папку «Файлы поддержки»).
Это сработало для меня.
источник
Вы более чем вероятно пытаетесь заставить стручки работать в вашем проекте, верно? Единственный способ сделать это - создать отдельный проект, который использует CocoaPods.
Закройте все рабочие пространства, которые вы используете.
Затем убедитесь, что ваш Podfile полностью готов к работе.
В командной строке, где бы ни находился ваш файл, введите команду:
Затем установите свой pag agian.
Теперь вы можете использовать новое рабочее пространство вашего проекта для разработки. Найдите файл с именем .workspace. Используйте этот файл!
Вот руководство по использованию CocoaPods
источник
Используя Xcode 8.3, принятый ответ не работал для меня. Я перепробовал много других решений, но ответ @Elliott Davies это то, что мне помогло. Я добавляю скриншот для ясности. По какой-то причине Xcode пытался связать предыдущие настройки подфайлов, которых больше не было. Все, что мне нужно было сделать, это удалить лишние ссылки, и все заработало.
источник
Эта проблема сводила меня с ума, поскольку внезапно произошла без каких-либо изменений в проекте. Я попробовал все предложенные решения в этой теме (и другие связанные), и ни один из них не решил проблему.
Единственное, что отличалось от других моих проектов (которые компилировались нормально), было то, что в названии этого проекта был акцент (французский акцент, «é»). Я переименовал проект и все связанные файлы, и он наконец заработал!
Может быть, это связано с обновлением до Xcode 10, потому что этот проект работал задолго до ...
РЕДАКТИРОВАТЬ: он также, кажется, не удалось при использовании проекта с
-
в имени проекта ...источник
В моем случае, после сравнения различий между ветками, которые я знал правильно построенными, я заметил эту строку в моем Podfile:
Я случайно поднял целевую версию с 10 до 11, в то время как мои цели в XCode остались равными 10. Возвращение к 10 решило мою проблему для меня.
Убедитесь, что ваши целевые версии iOS установлены правильно.
источник
Так я решу свою проблему. и теперь это работает, когда я пишу этот ответ:
Во-первых, я стараюсь все самое лучшее, как указано выше,
Удалить Pods_xxx.framework из библиотек ссылок и инфраструктуры на этапах сборки цели полезно, и проблема исчезнет, но проблема заключается в том, что я больше не могу импортировать Pods.framework.
А затем я пытаюсь переустановить конфигурацию xcworkspace, чтобы выяснить реальную проблему. так что я бегу
а затем снова установите мой модуль:
эта работа идеально, но проблема все еще там, но я понимаю, что реальная проблема заключается в том, что Pods_xxx.framworks не может быть скомпилирован успешно сценарием сборки cocoapods. Я думаю, что это верный способ решить проблему.
Наконец, я пытаюсь изменить схему моего проекта:
и я добавляю схему Pods в управление:
и создайте эту Pods.framework отдельно, и вы увидите, что значок Pods.framework снова станет действительно:
так что я иду к настройке сборки, и редактировать
"Framework Search Path"
с"${inherited}"
, и теперь все проблемы уходит, развеселить !!!! :)источник
${inherited}
путь, затем сделалProduct->Clean Build Folder
, и все, теперь он собирается без проблем.После удаления и обновления модуля у меня осталась та же проблема.
Я обнаружил, что предыдущий разработчик поставил флаг в « Настройки сборки -> Другие флаги компоновщика». » с именем Framework (в моем случае - фреймворк «OGVKit»), который создал проблему.
После удаления этого флага, проект собирается правильно.
источник
Я действительно испытал эту проблему, потому что я не установил
platform
правильно.Итак, в моем приложении MacOS была установлена платформа:
вместо того
источник
Я решил эту проблему, выбрав проект, который загрузил
CocoaPods
и собрал его. Вы можете нажать «Управление схемами», чтобы отобразить его на панели «Выполнить». Затем вы можете восстановить свой проект. Надеюсь, это поможет.источник
В моем случае была ссылка на библиотеку, которую я удалил на
Удаление библиотеки из Podfile и ее обновление, очевидно, не удалило ее, поэтому мне пришлось сделать это вручную, и теперь все работает.
источник
Ни один из предыдущих ответов не указал на коренную проблему в моей ситуации. Поэтому я надеюсь, что это может быть полезно для кого-то еще.
В моем случае мне пришлось отредактировать мой подфайл в корне моего проекта. Когда я впервые создал свой подфайл, быстрые статические библиотеки не поддерживались. Так что я использовал
use_frameworks!
в своем подфайле под каждой из моих целей как таковой:ПЕРЕД
ПОСЛЕ
Я удалил
use_frameworks!
из своего подфайла, который продолжал устанавливать фреймворки каждый раз, когда запускал pod install. После удаления этой строки обязательно запуститеpod install
снова и удалите все красные ссылки .framework из папки Frameworks в XCode. (Хотя мое выглядело иначе, как прикреплено ниже.)Образ удаления файлов .framework, которые больше не нужны
Вы также можете прочитать больше о
use_framework!
здесь .источник
Если вы открыли файл .xcworkspace и у вас все еще появляется та же ошибка:
источник
Удалите папку frameworks, созданную после установки или обновления модуля
источник
Другая вещь, которая решила мою проблему, это пойти под Target -> Build Settings -> Other Flags Linker и удалить «-framework» и вашу структуру «name».
Это случилось, когда я попытался удалить стручок.
источник
Я решил это путем перетаскивания
.framework
файла в Linked Framework и библиотекиДопустим, у меня возникла эта проблема из-за ошибки,
FIRAnalyticsConnector not found
и я просто перетащилFIRAnalyticsConnector.framwork
файл в Linked Framework и библиотеки, и моя проблема решенаисточник
Я попробовал каждый ответ здесь, и ни один из них не работал. Я закончил тем, что начал работать, подняв цель развертывания с 10.0 до 11.0. Я понятия не имею, почему это исправило это, но я подозреваю, что это имеет отношение к обновлению до Xcode 10.2.1.
источник
может быть, вы вдруг открыли не тот файл .xcodprj, и вам следует открыть .xcworkspace
источник
Пожалуйста, проверьте ваш исполняемый файл внутри.
Имя исполняемого файла должно нравиться без расширения.
Некоторые рамки, показывающие это
Использование терминала Перейти к каталогу .framework используйте следующую команду: lipo -create FrameworkName-x86_64 FrameworkName-armv7 FrameworkName-armv7s FrameworkName-i386 FrameworkName-arm64 -output FrameworkName
после создания одного исполняемого файла удалите эти файлы
источник