Ошибка gcc-4.2 с кодом выхода 1 iphone

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

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

CGContextAddArcToPoint(c, minx, miny, midx, miny, ROUND_SIZE);

Это дало сообщение об ошибке, указывающее, что оно не было объявлено, поэтому я добавил в свой файл .h следующее в разделе import uikit:

#import <UIKit/UIKit.h>
#define ROUND_SIZE 10

Теперь он показывает, что у меня есть ошибка:

Ошибка Command/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 с кодом выхода 1 iphone

В некоторых дискуссиях говорится о библиотеках, но поскольку у меня нет опыта программирования, я не понимаю, что делать. Я также вижу, что некоторые люди показывают вывод журнала, но я не уверен, откуда он взялся, поскольку я не получаю никаких окон отладки, потому что я предполагаю, что это не так далеко. Я просто нажимаю "Build and Go" и получаю эту ошибку в окне сообщения.

Есть предположения?


person SKayser    schedule 08.08.2009    source источник


Ответы (19)


Как видно из множества разных ответов, эта ошибка вызвана множеством разных проблем. К счастью, я нашел мета-решение!

В xcode щелкните правой кнопкой мыши строку ошибки и выберите «Открыть эти последние результаты как текстовый файл расшифровки». Откроется реальный журнал выходных данных xcode, который должен содержать более точное описание ошибки, чем то, что было ранее.

-Эван

person Evan Moran    schedule 30.11.2010
comment
это будет довольно большой текстовый файл. не забудьте выполнить поиск «код выхода 1», и описание будет прямо над результатами. - person Alex Nguyen; 31.12.2010
comment
@SeniorLee: Я считаю, что вам это не нужно, просто посмотрите на строки перед этой, и она уже там! - person o0'.; 03.02.2012

Я прошел через ту же проблему. Может быть какой-то файл, на который нет ссылки. Вы можете увидеть этот тип файла красной буквой. Удалите этот файл.

person Community    schedule 30.09.2010

Вероятно, вы не добавили CoreGraphics.framework в свой список фреймворков.

Чтобы убедиться, щелкните папку «Frameworks» в Xcode. Если фреймворк не указан в таблице справа, вам нужно добавить его, щелкнув правой кнопкой мыши папку Frameworks, выбрав «Добавить существующий фреймворк...», а затем выбрав его из списка.

person Aviad Ben Dov    schedule 08.08.2009
comment
Я работал с устаревшим проектом, обновляя его, и все мои фреймворки были отключены. Мне пришлось сбросить цель развертывания и повторно импортировать фреймворки, но это исправило меня. - person Justin; 06.11.2010

Я обнаружил проблему, увидев окно результатов сборки, о котором упомянул Дэйв (спасибо!!!). У меня была другая версия одного и того же файла .h и .m, потому что я тестировал другой код. Я удалил ненужные файлы, так как он видел что-то там как дубликат. Сборка прошла успешно. Спасибо!

person SKayser    schedule 08.08.2009
comment
Вот что случилось со мной. Спасибо за этот ответ. :) - person sudo rm -rf; 10.01.2011
comment
Отметьте свой ответ как отвеченный, пожалуйста! :-) - person Lee Armstrong; 24.07.2011

Вы можете увидеть вывод сообщения об ошибке из GCC, выбрав «Результаты сборки» в меню «Сборка» или нажав ⇧⌘B.

person Dave Verwer    schedule 08.08.2009

вы определили одни и те же статические константы!!!!

static NSString *kSectionTitleKey = @"sectionTitleKey";
static NSString *kSectionTitleKey = @"sectionTitleKey";

проблема в

ничего о CoreGraphics.framework

person Sage    schedule 13.12.2009
comment
Что kSectionTitleKey? Что вы имеете в виду? - person sth; 14.12.2009
comment
我英文不好,就是你定义了相同的静态常量. Вы определили одни и те же статические константы, это и есть причина ошибки! - person Sage; 15.12.2009
comment
Знаете ли вы, как сохранить изображения из одного из моих приложений в PhotoLibrary? - person Sage; 15.12.2009
comment
UIImage *imageSave = [UIImage imageNamed:@1.jpg ]; UIImageWriteToSavedPhotosAlbum (imageSave, ноль, ноль, ноль); я знал - person Sage; 15.12.2009

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

person Alex Nguyen    schedule 31.12.2010

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

person AJPatel    schedule 07.06.2011
comment
У меня была эта ошибка с использованием среды тестирования (KIF). Во время установки к проекту были подключены две библиотеки KIF Cocopod с небольшими изменениями в именах. Удаление одного решило проблему. - person The Camster; 21.01.2014

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

Поэтому убедитесь, что все ваши классы имеют уникальные имена :)

person sasquatch    schedule 07.10.2011

ошибки сборки xcode:

 Unsupported compiler ‘GCC 4.2′ selected for architecture ‘i386′

Решение:

Это может быть вызвано импортом проекта для SDK до iOS 5 в копию xcode только с SDK для iOS 5.

Чинить,

  click your Project -> Build Settings.  Then under Build Options, there is an entry for Compiler for C/C++/Objective-C.  Choose Apple LLVM compiler 3.0.
person sinh99    schedule 03.03.2012

Когда вы создаете файл, вам нужно отключить [снять отметку] библиотеки cocos2d, а затем добавить файл. так что ошибка gcc-4.2 будет исправлена ​​:) checkout!!!

person Albert    schedule 26.10.2010

Эта проблема также возникает при переименовании файла XIB. Вы должны заменить старое имя новым именем в файлах xib, а также в контроллере навигации (если он используется).

person Developer    schedule 19.11.2010

Для меня я нашел вышеприведенное решение полезным .... «Открыть эти последние результаты как текстовый файл расшифровки», в котором объясняется, что он не может найти libGDataTouchStaticLib.a. Затем мне пришлось создать статическую библиотеку для Gdata.xcodeproj (изменив активную цель> GdataTouchStaticLib), а затем вручную добавить этот файл, перетащив его в цели> MYAPPNAME> Link Binary With Libraries. Построить и запустить.. Все хорошо.

person johndpope    schedule 03.12.2010

Эта проблема может быть связана с отсутствием некоторых библиотек. Щелкните правой кнопкой мыши строку с ошибкой и выберите «Открыть эти результаты как текстовые файлы расшифровки» и проверьте отсутствующую библиотеку.

person aibin    schedule 11.02.2011

У меня была такая же проблема, заметил, что он ищет файл не в той папке, по сути, не храните проекты в папках с апострофами в их имени!

person Jason Hibbs    schedule 25.06.2011

У меня такая же проблема. Причина в том, что у меня было две функции int main(int argc, char *argv[]).

person xiaogong    schedule 24.05.2010

Я получил ту же ошибку и решил очень странным образом. Очистка и пересборка проекта не решают эту проблему, но простое добавление пустой строки в ApplicationViewController.mm заставило компилятор пересобрать "что-то", и ошибка исчезла сама собой.

Просто добавлю, что один и тот же проект без ошибок компилируется на iMac и не работает на macBook.

person Stefano Gemma    schedule 09.05.2012

Я получал эту ошибку при создании проекта cocos2d с использованием xcode 4.3 на Lion. Чтобы исправить эту ошибку, я следовал инструкциям здесь: http://www.mac.ph/cocos2d-templates-and-xcode-43

person user674669    schedule 14.04.2012

Вот одно из возможных решений:

Удалите оператор импорта файла .m(реализация) из класса viewController, если он включен вместе со связанным файлом .h(header).

Вместо включения (по ошибке)

#include "myClass.h"
#include "myClass.m" 

Включите только необходимый заголовочный файл как:

#include "myClass.h"

Спасибо, Проразработчик

person prodeveloper    schedule 07.09.2012