Ответ 1
Для каждого с аналогичной ошибкой. Если это произойдет, вы обычно можете удалить "Путь" под пунктом
target- > Настройки сборки- > Пути поиска в библиотеке
Я больше не могу скомпилировать свой проект для устройства или симулятора. Я получаю 13 ошибок Apple Mach-O-Linker. Все началось после неудачной попытки использования sharekit. Вот журнал ошибок:
ld: warning: directory not found for option '-F/Users/bbrandy95/Documents/Broken Brandsonic Web Projects/Brandsonic Web mobile/../../Downloads/0.2.1gm1/iphoneos4.0/System/Library/Frameworks'
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_NSURLRequest", referenced from:
objc-class-ref in Brandsonic_Web_mobileAppDelegate.o
objc-class-ref in Brandsonic_Web_mobileViewController.o
"_OBJC_CLASS_$_NSAutoreleasePool", referenced from:
objc-class-ref in main.o
"_objc_msgSendSuper2", referenced from:
-[Brandsonic_Web_mobileAppDelegate dealloc] in Brandsonic_Web_mobileAppDelegate.o
-[Brandsonic_Web_mobileViewController didReceiveMemoryWarning] in Brandsonic_Web_mobileViewController.o
-[Brandsonic_Web_mobileViewController dealloc] in Brandsonic_Web_mobileViewController.o
"_objc_setProperty", referenced from:
-[Brandsonic_Web_mobileAppDelegate setWindow:] in Brandsonic_Web_mobileAppDelegate.o
-[Brandsonic_Web_mobileAppDelegate setViewController:] in Brandsonic_Web_mobileAppDelegate.o
"__objc_empty_vtable", referenced from:
_OBJC_CLASS_$_Brandsonic_Web_mobileAppDelegate in Brandsonic_Web_mobileAppDelegate.o
_OBJC_METACLASS_$_Brandsonic_Web_mobileAppDelegate in Brandsonic_Web_mobileAppDelegate.o
_OBJC_CLASS_$_Brandsonic_Web_mobileViewController in Brandsonic_Web_mobileViewController.o
_OBJC_METACLASS_$_Brandsonic_Web_mobileViewController in Brandsonic_Web_mobileViewController.o
_OBJC_METACLASS_$_SecondView in SecondView.o
_OBJC_CLASS_$_SecondView in SecondView.o
"_objc_msgSend", referenced from:
_main in main.o
-[Brandsonic_Web_mobileAppDelegate application:didFinishLaunchingWithOptions:] in Brandsonic_Web_mobileAppDelegate.o
-[Brandsonic_Web_mobileAppDelegate dealloc] in Brandsonic_Web_mobileAppDelegate.o
-[Brandsonic_Web_mobileAppDelegate GOOGLE] in Brandsonic_Web_mobileAppDelegate.o
-[Brandsonic_Web_mobileAppDelegate YOUTUBE] in Brandsonic_Web_mobileAppDelegate.o
-[Brandsonic_Web_mobileAppDelegate WIKI] in Brandsonic_Web_mobileAppDelegate.o
-[Brandsonic_Web_mobileViewController webView:shouldStartLoadWithRequest:navigationType:] in Brandsonic_Web_mobileViewController.o
...
"__objc_empty_cache", referenced from:
_OBJC_CLASS_$_Brandsonic_Web_mobileAppDelegate in Brandsonic_Web_mobileAppDelegate.o
_OBJC_METACLASS_$_Brandsonic_Web_mobileAppDelegate in Brandsonic_Web_mobileAppDelegate.o
_OBJC_CLASS_$_Brandsonic_Web_mobileViewController in Brandsonic_Web_mobileViewController.o
_OBJC_METACLASS_$_Brandsonic_Web_mobileViewController in Brandsonic_Web_mobileViewController.o
_OBJC_METACLASS_$_SecondView in SecondView.o
_OBJC_CLASS_$_SecondView in SecondView.o
"_OBJC_CLASS_$_NSObject", referenced from:
_OBJC_CLASS_$_Brandsonic_Web_mobileAppDelegate in Brandsonic_Web_mobileAppDelegate.o
"___CFConstantStringClassReference", referenced from:
CFString in Brandsonic_Web_mobileAppDelegate.o
CFString in Brandsonic_Web_mobileAppDelegate.o
CFString in Brandsonic_Web_mobileAppDelegate.o
CFString in Brandsonic_Web_mobileViewController.o
CFString in Brandsonic_Web_mobileViewController.o
CFString in Brandsonic_Web_mobileViewController.o
CFString in Brandsonic_Web_mobileViewController.o
...
"_OBJC_CLASS_$_NSKeyedUnarchiver", referenced from:
objc-class-ref in Brandsonic_Web_mobileViewController.o
"_OBJC_CLASS_$_NSUserDefaults", referenced from:
objc-class-ref in Brandsonic_Web_mobileViewController.o
"_OBJC_CLASS_$_NSURL", referenced from:
objc-class-ref in Brandsonic_Web_mobileAppDelegate.o
objc-class-ref in Brandsonic_Web_mobileViewController.o
"_OBJC_METACLASS_$_NSObject", referenced from:
_OBJC_METACLASS_$_Brandsonic_Web_mobileAppDelegate in Brandsonic_Web_mobileAppDelegate.o
_OBJC_METACLASS_$_Brandsonic_Web_mobileViewController in Brandsonic_Web_mobileViewController.o
_OBJC_METACLASS_$_SecondView in SecondView.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
'
Как это исправить? Пожалуйста, помогите.
Для каждого с аналогичной ошибкой. Если это произойдет, вы обычно можете удалить "Путь" под пунктом
target- > Настройки сборки- > Пути поиска в библиотеке
Эта ошибка может возникнуть, если структура добавлена в проект более одного раза.
Это также может быть вызвано, если вам не хватает файлов заголовков фреймов или ссылки на них.
Удачи.
Если вы установили зависимости с помощью CocoaPods, убедитесь, что вы открыли проект XCode, щелкнув файл .xcworkspace
и не файл .xcodeproj
.
Кажется, что файл проекта, возможно, был поврежден.
Самый верный способ исправить это - создать новый проект и перенести файлы и старый info.plist поверх него.
Следующий наиболее вероятный способ исправить это - создать новую цель в текущем проекте и посмотреть, будет ли она компилироваться (если у вас есть специальные флаги старой цели, которую вы захотите скопировать).
Также вы можете попробовать выполнить компиляцию для Release vs. Build, и если один из них работает, посмотрите на все параметры компилятора и посмотрите, что другое.
Если вы добавили путь поиска заголовка для Sharekit, попробуйте очистить весь путь поиска заголовка и посмотреть, исправляет ли это что-то. Также убедитесь, что ваш проект по-прежнему включает рамки, которые включает в себя новый проект (UIKit и NSFoundation, возможно, другие).
Добавьте файл .m для компиляции исходной страницы.
шаги: -
Надеюсь, что кто-нибудь с этой проблемой поможет
Проблемы - это пробелы в вашем пути:
xcode использует следующий переключатель для компоновщика:
-F/Users/bbrandy95/Documents/Broken Brandsonic Web Projects/Brandsonic Web mobile/../../Downloads/0.2.1gm1/iphoneos4.0/System/Library/Frameworks
и поскольку он не цитируется, это не сработает. (Он ищет папку "/Users/bbrandy95/Documents/Broken"
Вы должны переименовать каталоги или просмотреть настройки проекта и добавить кавычки в каталоги. (Но это может быть сложно найти)
У меня тоже была такая же проблема с 45 одинаковыми ошибками, когда я добавлял libxml2.dylib в свой проект, ошибки исчезли.
В некоторых случаях путь поиска в библиотеке пуст. Поскольку существует много ошибок компоновщика Apple-mac-o.
См. также мой ответ.
Ошибка Apple Mach-O Linker с использованием классов Core Data в OCUnit
У меня была эта проблема, теперь для моих обстоятельств выбирая более новую версию iOS, поскольку цель развертывания исправила это для меня. Мой проект был настроен на развертывание в iOS 5 по умолчанию и изменение этого значения до 7 (самое последнее) выполнило трюк.
Для любого нового разработчика iOS это можно сделать, щелкнув файл проекта XCode в навигаторе > информация о развертывании > цель развертывания и выбрав соответствующую версию из выпадающего меню.
Я скептически отношусь к тому, что это решит некоторые проблемы, которые есть у других, но может быть несколько человек на той же лодке, что и я.
Это потому, что проект вставлял основной файл xcdatamodeld в файлы компиляции. Выберите свой проект → Фазы сборки → Скомпилируйте источники и удалите файл projectName.xcdatamodeld.
А также проверьте, был ли импортирован файл .m
вместо файла .h
, он также дает ту же ошибку компоновщика. Проверьте все коды #import.
И проверьте, если вы добавили основную базу данных данных в библиотеку и импортировали файл данных ядра .h
. Проверьте создание NSManagedObject
и импортируйте его.
Просто попробуйте и ответьте мне, если все еще есть какая-либо ошибка.
У меня была та же проблема,
Я просто установил параметр сборки → Enable Bitcode
в NO
Я столкнулся с этой проблемой с моим саморазвитым кокоаподом.
Ошибка была: Apple Mach-O Linker errror
Оказалось, что я определил протокол и реализовал расширение протокола. Один из способов расширения протокола был общедоступным, но сам протокол не был. И это вызвало ошибку Apple Mach-O Linker.
Пример:
протокол MyProtocol {поле var: String {get}}
расширение MyProtocol { общедоступный func giveMeSomething() → String}
открытый класс MyClass: MyProtocol {}
В описании упоминается ошибка, упоминавшаяся MyClass, на которую ссылается MyProtocol → MyProtocol, на которую ссылается функция giveMeSomething()...
Итак, решение заключалось в том, чтобы сделать Myprotocol также общедоступным
Надеюсь, что это поможет кому-то.