it-swarm.com.ru

Ошибка Apple Mach-O Linker при компиляции для устройства

Я только что обновился до xcode 4.0 и больше не могу развертываться на iPhone, я получаю ошибку Apple Mach-O Linker, хотя она все еще работает для симулятора.

    Ld /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Intermediates/iParcel.build/Debug-iphoneos/iParcel.build/Objects-normal/armv7/iParcel normal armv7
    cd /Users/yveswheeler/iParcel
    setenv IPHONEOS_DEPLOYMENT_TARGET 3.2
    setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/g++-4.2 -Arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk -L/Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos -F/Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos -filelist /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Intermediates/iParcel.build/Debug-iphoneos/iParcel.build/Objects-normal/armv7/iParcel.LinkFileList -dead_strip -all_load -ObjC -lxml2 -miphoneos-version-min=3.2 -framework UIKit -framework CoreGraphics -framework QuartzCore /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Core.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Network.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Style.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UI.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UICommon.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UINavigator.a -framework AddressBook -lz.1.2.3 -framework Foundation -framework CFNetwork -framework MobileCoreServices -framework SystemConfiguration -framework MessageUI -framework AudioToolbox -o /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Intermediates/iParcel.build/Debug-iphoneos/iParcel.build/Objects-normal/armv7/iParcel

arm-Apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20.a: No such file or directory
arm-Apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Core.a: No such file or directory
arm-Apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Network.a: No such file or directory
arm-Apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Style.a: No such file or directory
arm-Apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UI.a: No such file or directory
arm-Apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UICommon.a: No such file or directory
arm-Apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UINavigator.a: No such file or directory
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/g++-4.2 failed with exit code 1
233
CodeVomit

Проблема заключалась в том, что в XCode 4 зависимости не принимают настройки архитектуры основного проекта, как это было ранее в XCode 3. Мне пришлось пройти через все мои зависимости, устанавливая их для правильной архитектуры.

20
CodeVomit

Вот постоянное решение. В общем случае перезапись проекта может вызвать эту проблему. Попробуйте этот метод.

-UPDATE - Ошибка лягушки - Ошибка компоновщика Mach-O

В некоторых случаях в окне журнала ошибок отображается ошибка .xctest, чтобы ее исправить.

-> Выберите свой проект

-> Рядом с этим (непосредственно перед вкладкой General) выберите свой файл projectTest из выпадающего списка

-> Есть один вариант (например, ProjNameTests)

-> В Host Application выберите свой проект из выпадающего списка, только если он показывает пользовательский

СДЕЛАННЫЙ!

enter image description here

Старый метод удален

214
Gajendra K Chauhan

У меня была та же проблема, и проблема была в том, что я случайно импортировал .m файл вместо .h в файле реализации - надеюсь, это поможет

195
Daniel

Просто столкнулся с той же проблемой.

Решение (для меня) = проверить свои рамки. 

В моем случае я добавил классы, связанные с CoreData без "CoreData.framework". Добавление его решило жалобу MACH_O.

73
Dante Cesa

открыть .xcworkspace файл не .xcodeproj. Я повторяю открытый файл .xcworkspace. Все ваши ошибки исчезнут.

56
mahi

Re: проблема, как указано в заголовке:

На всякий случай, если кто-то пропустил очевидное ...

Я столкнулся с этой ошибкой после установки новой версии Xcode4 и перетаскивания существующих файлов в новый проект. Мне не удалось обнаружить, что флажок «Добавить к целям» не был отмечен в диалоговом окне «Выбор параметров для добавления файлов:». Исправление моего упущения в Цели> Фазы сборки> Компиляция источников решило проблему.

36
cate

Меню> Продукт> Чистота - вот что заставило его работать. Я не уверен во всех остальных. Я добавил фото, чтобы показать. 

enter image description here

31
dnaatwork.com

Странная ошибка. Для меня, я просто очистил и перезапустил Xcode, и проблема ушла.

29
p.pad

Исправлено: Настройки сборки> Включить биткод> Нет  enter image description here

26
Sebastián Lara

Ни один из этих ответов не помог мне. Затем я попытался переустановить Cocoapods:

pod deintegrate

pod install

Задача решена!

20
Johannes

У меня было то же самое и удалось решить. 

В настройках xcode расположение tab меняет значение в build location на "Place build products in locations specified by targets"". 

13
Wolfert

Некоторое время я боролся с этим, и в моем случае это был параметр «Сборка» в разделе «Пути поиска» под названием FRAMEWORK_SEARCH_PATHS. Помогло то, что я выбрал кнопку «Уровни», которая, казалось, сравнивала мой проект, цель и настройки «Разрешено». Я увидел, что мои настройки цели каким-то образом переопределили значение по умолчанию «$ (унаследованное)», и переопределенное значение было тем, что XCode «разрешил» для настройки. Когда я удалил переопределение, которое в данном случае указывало 3.2 sdk, ошибки компоновщика исчезли - как и некоторые недавно появившиеся предупреждения о любых классах, где я вызывал методы после 4.0.

Об этих предупреждениях - я никогда не видел их, пока не добавил платформу MessageUI для недавних изменений. Я подозреваю, но не знаю наверняка, что когда я добавил эту платформу, XCode попытался сделать что-то умное, добавив это переопределение к моей цели. Я не делал это явно в любой момент. Предупреждения были, например, о методе URLByAppendingPathComponent NSURL, который не появлялся до SDK 4.0. До добавления платформы MessageUI я никогда не получал это предупреждение. И так как я удалил переопределение, я больше не получаю их.

13
tigerswim19

У меня была эта проблема, и импорт QuartzCore устранил ее.

11
jmosesman

Изменение «Только для активных архитектур» на «Да» в CordovaLib.xcodeproj -> «Настройки сборки» помогло мне. ранее приложение работало на симуляторе, но не на устройстве. 

8
Whizkid747

У меня была та же проблема: просто случайно удалил файл .m, пока в проекте был .h Проблема исчезла, когда я восстановил файл .m.

7
Misha Karpenko

Возможно, вам придется обновить настройки сборки.

Проверьте целевую версию iOS и архитектуру процессора, поскольку у вас может не быть старых SDK с XCode 4.

Вы можете увидеть «Missing SDK» в настройках сборки. Измените это на что угодно.

7
Macmade

Убедитесь, что у вас не указан конкретный путь поиска фреймворка. если вы переходите к информации о цели и просто удаляете записи пути поиска фреймворка, следует использовать значения по умолчанию для указанной версии развертывания.

6
Grady Player

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

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

Я просто удалил их все и восстановил подклассы NSManagedObject.

5
Flaviu

Я просто пытаюсь создать файл category class и получил эту странную проблему .. и наконец ....

Неправильно способ создания класса категории, который вызывает проблему:

New File -> Cocoa Touch -> Objective-C class, затем я изменил имя файла на Category Class, например name .. (т.е. OriginalClass_CategoryName.h/m на OriginalClass+CategoryName.h/m, а также изменил содержимое файла).

Правильный путь здесь:

New File -> Cocoa Touch -> Objective-C category, и он будет автоматически генерировать файлы (OriginalClass+CategoryName.h/m).

О, как я глупа!

5
Kjuly

У меня была точно такая же проблема только потому, что у меня были две одинаковые константы в разных классах. Вы также можете иметь эту проблему, если вы импортируете .m файл, а не .h файл 

5
Adela

Чтобы добавить в список странных вещей, которые исправили эту проблему ...

У меня были некоторые константные переменные CGFloat в глобальном заголовочном файле, например,

const NSInteger  globalInteger1 = 2;
const NSInteger  globalInteger2 = 3;

В тот момент, когда я удалил их, все было хорошо :)

5
sherlock

У меня была такая же проблема, и я ее решил. В моем случае проблема была связана с настройкой «архитектуры». В моем файле проекта на вкладке «Настройки сборки» для архитектуры было установлено значение armv6. Я поменял его на Standard (armv7), делаю чистку и сборку. Тогда это сработало!

4
Kim Jin

В моем случае проблема заключалась в том, что разные архитектуры указывались под разными целями. Я строил свою цель приложения с armv6, armv7 и cocos2d с помощью Standard (amrv7). Зайдите в настройки сборки и убедитесь, что ваша архитектура соответствует всем целям.

4
ChrisP

Не уверен, что это связано, но, видя, что вы используете около трех20 библиотек, вы можете проверить этот пост на их сайте: http://three20.info/article/2011-03-10-Xcode4-Support

4
Rog

Это помогло мне:

Идти к 

1) Продукты> чистые

2) Windows> Проекты

3) Выберите ваш проект и нажмите « Удалить » Производные данные

4) Продукты> Сборка

4
Nilesh Pol

Я решил эту проблему слишком странно! 

Перейти к Target > Build Phases > Связать двоичные файлы с библиотеками :

Удалите все свои рамки и добавьте их снова! 

Надеюсь, это работает для вас! 

4
Rudi

Для языка Swift ...

Я получаю эту ошибку "ld: file too small (length = 0) ...." 

В моем случае я просто очищаю проект, а затем перестраиваю его ..

Шаги: -

1) Перейти к проекту -> Чистый

2) Перейти к проекту -> Построить

Надеюсь это поможет..

4
Niks

Если вы определили NSObject с тем же именем, например:

NSObject *notUniqueObj;

даже в 2 разных файлах (если вы импортируете один в другой), это выдаст вам ошибку. Дайте разные имена для тех.

3
Omkar Jadhav

Мне удалось исправить эту ошибку, отредактировав «Пути поиска в библиотеке» 

Во-первых, он возник, потому что я переместил пару папок, и в результате у моих настроек сборки появилось два разных пути поиска, потому что они автоматически добавляются в ваши настройки сборки, когда вы связываете библиотеку/инфраструктуру, но это не так. всегда удаляется. 

Поэтому, если вы переместите связанную библиотеку/каркас в другой каталог и заново создадите ссылку, вам придется вручную редактировать путь поиска.

Возможно, вы сможете избежать этого, удалив библиотеку/фреймворк перед перемещением, но я этого не проверял.

3
Rembrandt Q. Einstein

Код подписи !!!

У меня тоже была эта проблема -"Сбой команды компоновщика с кодом выхода 1 (используйте -v для просмотра вызова)"

моя проблема заключалась в том, что я пытался запустить приложение на реальном устройстве, и я забыл настроить разделCode Signingво вкладке Build Settings .

3
Aviram Net

Я ошибочно определил новую константу с тем же именем, что и существующая константа в другом файле, и это вызвало эту ошибку для меня с помощью xCode 4.3.1. xCode не жаловался, но компилятору это не нравится.

3
moliveira

Для меня это был случайный импорт файла реализации ".m" вместо соответствующего файла заголовка ".h". Как только я понял, что сборка проекта вернулась в нормальное русло.

3
owenfi

для меня проблема была в том, что я загружал одни и те же функции дважды. Удалите -ObjC из Настройки сборки > Связывание > Другие флаги компоновщика .

3
Agu Dondo

Одна возможность: включить «Удаление мертвого кода» в настройках сборки Xcode 4.

Другая возможность: возможно, вы переключились на использование LLVM для некоторой среды, которая ранее использовала GCC. Возвращение к GCC (или LLVM GCC) может избавить от этих предупреждений.

3
Enchilada

Я случайно пытался скомпилировать для 64-битного симулятора, который не согласился с моими CocoaPods

2
Alan

Для меня было ошибкой архитектуры при работе на устройстве в XCode 4.5.x. 

XCode 4.5 больше не поддерживает armv6, поэтому я решил:

Я только что отредактировал все цели во всех библиотеках (three20Core, three20Common и т.д.) И libThree20: в настройках сборки выбрал только armv7 и armv7s в «Архитектурах» и «Действительных архитектурах»

2
Paulius Vindzigelskis

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

2
Mazen Kasser

Мое исправление для той же проблемы: добавление «других флагов компоновщика» в «Project», а не в «Targets» . Итак, я переместил его в «Targets», его не должно быть в «Project».

2
Idan Moshe

Решение этой проблемы очень простое Просто перейдите в каталог, где установлен проект, и откройте файл С расширением ".xcworkspace"

Это решит проблему. 

2
Ahmed Samir

Я бегу xcode 5. В моем случае я должен изменить свою "цель развертывания" . Ранее он был установлен как 3.0, и я изменяю его на 7.0. Теперь сообщение об ошибке исчезло. Чтобы изменить «цель развертывания» , Выполните следующие действия:

  • Перейдите к вашему "Название проекта" (вверху слева)
  • Перейдите к "Targets" (середина экрана)
  • Перейти к "General"
  • "Информация о развертывании"
  • "Цель развертывания"

Измените его на текущую версию iOS .- Спасибо.

2
Tulon

Если вы получаете предупреждение или ошибку Mach-O Linker с надписью «Каталог не найден для параметра», найдите путь к этому каталогу. Если он отсутствует, попробуйте загрузить последнюю версию RestKit и вручную вставить папку.

1
Kyle Clegg

Я случайно добавил две копии одного и того же подкласса UITableViewController. Удаление одного из наборов файлов устранило ошибку.

1
smileBot

Моя проблема заключалась в том, что я не определил переменные как extern в одном из моих заголовочных файлов, и он был повторно объявлен в файле .c.

1
Maverick

Если вы использовали XCode для создания пользовательского класса NSManagedObject, а затем добавили к нему и сгенерировали новый файл для пользовательского класса, иногда XCode не будет перезаписывать ваш старый класс, и вы застрянете с двумя одинаковыми файлами, но в разных каталогах. Найдите старый файл и удалите его.

Проблема может быть что-то еще, хотя. 

0
Jared Moskowitz

В моем случае причиной такой ошибки Apple Mach-O Linker было включение файла исходного кода (.m) в целевой пакет ресурсов.

Убедитесь, что недавно созданный файл .m не включен в комплект: выберите файл в навигаторе проекта, откройте инспектор файлов и убедитесь, что флажок комплекта ресурсов снят в разделе Target Membership.

0
pjuzeliunas

В моем собственном случае у меня были двойные объявления некоторых ключей. Я объявил некоторые константы NSString с помощью ключевого слова extern и сделал то же самое в двух разных файлах классов. Когда я удалил один из них, ошибка исчезла.

extern NSString *const CFDataStatusKey;
extern NSString *const CFDataErrorKey;
extern NSString *const CFDataReasonKey;
extern NSString *const CFDataChannelsKey;

Они были объявлены и инициализированы соответственно в файлах .h и .m двух классов. Удаление дубликата решило проблему. Надеется, что это помогает

0
user5284310

С CocoaPod сначала установите, а затем откройте рабочую область вместо проекта, как указано на веб-сайте CocoaPod .

$ pod install

$ open YOUR_PROJECT_NAME.xcworkspace
0
Hassan Rahman

Мне просто пришлось файлы с методом main(), и XCode не был доволен этим.

0
Curlip

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

0
AHSAN NAZIR RAJA

Если вы используете Xcode 7 или новее, просто сделайте продукт -> чистый. Это сработало для меня.

0
Daniel

У меня была та же проблема, так как я перетаскивал некоторые файлы .h и .m в свой проект, и Xcode начал показывать мне эту ошибку clang: error: команда линкера завершилась неудачно с кодом выхода 1 (используйте -v для просмотра вызова) во время бега.

Позже я обнаружил, что у меня уже есть .h & .m в моем проекте XCode под каким-то другим подпапкой. Поэтому я удалил Extra .h и .m, Очистил мой проект и теперь он работает.

clang: error: сбой команды компоновщика с кодом выхода 1 (используйте -v для просмотра вызова) Эта ошибка возникает по ряду причин, поэтому в этом вопросе так много ответов. Вам просто нужно увидеть и проверить; в каком случае вы попадаете.

0
Jasmeet

Выполните следующие действия, чтобы решить эту проблему:

Зайдите в настройки проекта и откройте вкладку. Искать"Другие флаги компоновщика"

Дважды щелкните по флагам компоновщика для Release и Change:

 ${TARGET_BUILD_DIR}/libCordova.a to ${BUILT_PRODUCTS_DIR}/libCordova.a

Сделайте то же самое дляDebug Очиститеиbuildархив снова.

0
Tuttoilmondo

Моя проблема заключалась в том, что в нескольких файлах class.m я создал NSString с именем TAG, и я установил в качестве значения TAG имя String каждого класса (например, NSString * TAG = HWGuiControl). Я сделал так, чтобы тогда было легко добавить в мои операторы NSLog имя класса. (Я использовал эту систему в Android с большим успехом, отлично подходит для анализа хода программы 2 года спустя). Развертывание на устройстве, все это прекрасно работает. Но когда пришло время создать Архив для распространения, очевидно, что компоновщик не может конкурировать с NSString с именем TAG, появляющейся в нескольких файлах. Изменение имени (имен) TAG на HWGTAG и т.д. Сработало.

0
dasboos

в моем случае я просто переместил файл .h .m из одной папки в другую, и эта папка не существовала позади. поэтому я сначала создал папку в Finder, а затем переместил файл в Finder, а затем добавил эту папку и удалил ссылку на перенесенный файл в другую папку из проекта.

0
Khurram Iqbal

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

пример: include #import "file.m" или include external file.h 

...

0
user2165491

Не могли бы вы попробовать Unity-Build Settings-Player Settings-SDK Version: Device SDK вместо симулятора sdk

У меня была такая ошибка, и это исправило

0
Stormy

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

вы должны проверить последний импорт файла, который не является .m файл "Sometime I"

0
Abhijit Kotangale

Я хотел бы поделиться еще одной причиной, когда я получил эту ошибку: 

Я изменил имя проекта в Project Navigator (в Xcode 6.1.1) одним щелчком мыши, и мой проект не скомпилировался. Я изменил название проекта обратно на старое имя, проект строился. Очень очень странно, но да, я столкнулся с этим. Я надеюсь, что эта информация поможет. 

0
skypirate

У меня была такая же проблема минуту назад. что привело меня сюда, что не было никакой помощи. Но я разобрался в чем проблема и исправил ее. проблема заключалась в том, что в моем заголовочном файле я объявил один экземпляр класса структуры с именем trig_node [SIZE] 

мой заголовок ...

struct TrigNode
{
    float msin;
    float mcos;
    float mtan;
}trig_node[SIZE];

и в моем файле .cpp у меня есть функция, которая обращается к этому экземпляру и возвращает ответ.

float cos_table_(float deg)
{
    uint n = ((SIZE/DEGRE)*deg);
    return trig_node[n % DEGRE].mcos;
}

что и вызывает мою ошибку компоновки . Чтобы исправить это, я помещаю экземпляр класса таблицы триггеров "trig_node [SIZE]" в файл .cpp, который устраняет ошибку. так что теперь новое исправление выглядело примерно так

мой заголовок ...

struct TrigNode
{
    float msin;
    float mcos;
    float mtan;
};

мой .cpp файл trig_node [РАЗМЕР]

float cos_table_(float deg)
{
    uint n = ((SIZE/DEGRE)*deg);
    return trig_node[n % DEGRE].mcos;
}
0
kanthonye

Я должен был убедиться, что мой фреймворк был построен с выбранным симулятором, чтобы построить мой проект с симулятором (мой проект, конечно, использует фреймворк). То же самое касается сборки на моем iPhone, все должно быть синхронизировано, не знаю почему, но это решает проблему.

Я надеюсь, что это помогает кому-то.

0
jer_francis

Я получил ту же проблему, когда я экспортирую модуль FMDB в xcode 4.6 . Позже я нашел fmdb.m в моем списке файлов, который вызывал эту проблему . После того, как я удалил из проекта, он работает нормально

0
winari

Я получил эту проблему после импорта фреймворка. В разделе «Этапы сборки» имя платформы было выделено красным цветом. Я снова добавил рамки, и проблема была решена.

0
yoeriboven

Я столкнулся с этой проблемой, чтобы выяснить, что у меня есть две ссылки в моем проекте XCODE. Просто удалите другую ссылку. Надеюсь это поможет

0
Rick Royd Aban

Я исправил это, изменив Mach-O Type в разделе ссылок в настройках Build с Nothing на Executable.

0
Menan Vadivel

Моя конкретная ошибка была:

ld: entry point (_main) undefined. for architecture armv7

Что должно было быть очевидно, но это потому, что main.m не был включен в Compile Sources под Build Phases

0
Jacksonkr