ld: файл не найден: сбой команды компоновщика с кодом выхода 1

ios objective-c xcode linker

36409 просмотра

10 ответа

Я получил следующую ошибку при сборке проекта в Xcode:

ld: файл не найден

/Users/MacBookPro/Library/Developer/Xcode/DerivedData/Social_Events-cfnteabiivwfdzcoulzznhmgobhy/Build/Products/Debug-iphoneos/Social_Events.app/Social_Events лязг: ошибка: линкер команда потерпела неудачу с кодом выхода 1 (использование -v, чтобы увидеть вызов)

Я застрял с этой ошибкой в ​​течение последнего часа .. Любые решения? Код хорошо работал в iOS 7 и xCode 5.0 . Теперь для iOS8 это дает мне эту ошибку.

Использование фреймворков:

  • CoreTelephony
  • MapKit
  • Facebook.SDK v3.20
  • Фонд
  • CoreGraphics
  • UIKit Framework

ПОЛНАЯ ОШИБКА:

<pre>
Ld /Users/MacBookPro/Library/Developer/Xcode/DerivedData/Social_Events-cfnteabiivwfdzcoulzznhmgobhy/Build/Intermediates/Social_Events.build/Debug-iphoneos/Social_EventsTests.build/Objects-normal/arm64/Social_EventsTests normal arm64
    cd /Users/MacBookPro/Desktop/Social_Events/Social_Events/Social_Events
    export IPHONEOS_DEPLOYMENT_TARGET=7.1
    export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
</pre>

>/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch arm64 -bundle -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk -L/Users/MacBookPro/Library/Developer/Xcode/DerivedData/Social_Events-cfnteabiivwfdzcoulzznhmgobhy/Build/Products/Debug-iphoneos -F/Users/MacBookPro/Library/Developer/Xcode/DerivedData/Social_Events-cfnteabiivwfdzcoulzznhmgobhy/Build/Products/Debug-iphoneos -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk/Developer/Library/Frameworks -filelist /Users/MacBookPro/Library/Developer/Xcode/DerivedData/Social_Events-cfnteabiivwfdzcoulzznhmgobhy/Build/Intermediates/Social_Events.build/Debug-iphoneos/Social_EventsTests.build/Objects-normal/arm64/Social_EventsTests.LinkFileList -dead_strip -bundle_loader /Users/MacBookPro/Library/Developer/Xcode/DerivedData/Social_Events-cfnteabiivwfdzcoulzznhmgobhy/Build/Products/Debug-iphoneos/Social_Events.app/Social_Events -framework XCTest -fobjc-arc -fobjc-link-runtime -miphoneos-version-min=7.1 -framework XCTest -framework UIKit -framework Foundation -Xlinker -dependency_info -Xlinker /Users/MacBookPro/Library/Developer/Xcode/DerivedData/Social_Events-cfnteabiivwfdzcoulzznhmgobhy/Build/Intermediates/Social_Events.build/Debug-iphoneos/Social_EventsTests.build/Objects-normal/arm64/Social_EventsTests_dependency_info.dat -o /Users/MacBookPro/Library/Developer/Xcode/DerivedData/Social_Events-cfnteabiivwfdzcoulzznhmgobhy/Build/Intermediates/Social_Events.build/Debug-iphoneos/Social_EventsTests.build/Objects-normal/arm64/Social_EventsTests

>ld: file not found: /Users/MacBookPro/Library/Developer/Xcode/DerivedData/Social_Events-cfnteabiivwfdzcoulzznhmgobhy/Build/Products/Debug-iphoneos/Social_Events.app/Social_Events
clang: error: linker command failed with exit code 1 (use -v to see invocation)

>(null): File not found: /Users/MacBookPro/Library/Developer/Xcode/DerivedData/Social_Events-cfnteabiivwfdzcoulzznhmgobhy/Build/Products/Debug-iphoneos/Social_Events.app/Social_Events
Источник Размещён: 12.11.2019 09:44

Ответы (10)


166 плюса

Решение

Возможно, вы получаете эту ошибку, потому что вы переименовали свой проект и Testsбольше не можете его найти. Это легко исправить:

Решите это в Xcode следующим образом:

  1. Выберите свой проект из навигатора проекта.
  2. Выберите [Your project's Tests]под целями
  3. На Generalвкладке изменить Host Applicationиз выпадающего
  4. Сборка и запуск.

Скриншот

Эта проблема произошла со мной, потому что я переименовал свой проект, и тесты больше не могли его найти.

Автор: Jose Llausas Размещён: 27.04.2015 04:55

29 плюса

Проблема в том, что после переименования продукта его цель «Тесты» все еще ищет предыдущее имя приложения.

Выберите цель тестирования, а затем в настройках сборки измените значения TestHost, чтобы они соответствовали названию вашего нового продукта следующим образом:

$(BUILT_PRODUCTS_DIR)/YourNewProductName.app/YourNewProductName
Автор: Vladimir Afinello Размещён: 19.02.2015 12:03

13 плюса

Я решил это, переименовав продукт.

В целевом приложении выберите «Настройки сборки».

В разделе «Упаковка» вы должны переименовать ваш продукт в соответствии с именем, указанным в сообщении об ошибке.

Это решило мою проблему, и код начал компилироваться. Мои тестовые случаи также выполняются.

Автор: Selvin Размещён: 10.11.2014 06:57

13 плюса

У меня была похожая проблема - это потому, что я использовал Cocoapods и открыл файл .xcodeproj вместо файла .xcworkspace ... doh!

Автор: Darren Размещён: 27.07.2016 03:49

4 плюса

Вы пытались очистить полученные данные?

Xcode5->Organizer->Projects->Select your project->Delete the derived data.
Автор: thatzprem Размещён: 10.11.2014 07:07

2 плюса

Попробуйте удалить цель «Social_EventsTests».

Автор: vahotm Размещён: 01.11.2014 12:26

2 плюса

  1. Перейти к Построить настройки ваших тестов под названием PuzzleGameTests.
  2. Зайдите в настройки тестирования, напишите $ (BUILT_PRODUCTS_DIR) /PuzzleGame.app/PuzzleGame
  3. Очистить и построить

Примечание: PuzzleGame - это новое имя моего проекта (название продукта). RandomNumber - это старое имя моего проекта (название продукта).

Автор: pkc456 Размещён: 28.04.2015 03:48

2 плюса

У меня была проблема с "рамки не найдены". Это было после переименования моего проекта.

Зайдите в настройки проекта, выберите цель ( не проект). На вкладке «Общие» найдите «Связанные инфраструктуры и библиотеки» и удалите старое имя.

Автор: Vlad Pulichev Размещён: 27.06.2017 05:26

0 плюса

Я столкнулся с подобной проблемой при добавлении, FBSDKCoreKit.frameworkи решение было:

  1. Если frameworksуже добавлено, удалите его с опцией remove all references.
  2. Перетащите frameworksпрямо в нужное groupвам место в проекте.
  3. не перетаскивайте и не меняйте его местоположение после слов

Примечание. Когда мы перетаскиваем фреймворки в xcode, он автоматически устанавливает путь поиска фреймворка в <yourproject> -> Targets -> <yourproject> -> Search Paths -> Framework Search Paths. как только мы перемещаем фреймворки, они Framework Search Pathsстановятся пустыми и это приводит к linker error , framework not found.

Автор: Dashrath Размещён: 15.01.2016 06:37

0 плюса

Подобные проблемы возникали, когда я добавлял цель модульного тестирования в существующий проект. Получил все виды ошибок. Пришлось пробежать несколько петель, чтобы он наконец заработал. Перечисляя их ниже

  1. Убедитесь, что в разделе «Путь поиска в заголовке» указана цель теста, совпадающая с «Путь поиска в заголовке» в основной папке проекта.

  2. Если вы используете модули, вы можете запустить с ошибкой, такой как «Модуль не найден Firebase». Для этого просто добавьте следующие строки кода в файл pod и запустите pod install

    цель 'YourProjectNameTests' сделать

    унаследуют! : search_paths

    # Стручки для тестирования

    конец

  3. Если вы также получаете сообщение об ошибке Заголовочный файл Bridging не найден, как я сделал, убедитесь, что вы добавили то же самое для вашей цели теста в настройках сборки под общим кодом компиляции Swift

  4. Также вам нужно будет выполнить шаги, упомянутые @Jose Llausas

Автор: SaketGupte Размещён: 07.06.2017 08:31
Вопросы из категории :
32x32