Ошибки компиляции проекта Box2D xcode «Команда /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 завершилась ошибкой с кодом выхода 1» - PullRequest
1 голос
/ 09 июля 2011

Я пытаюсь скомпилировать Box2D.xcodeproj из репозитория box2d svn. Когда я загрузил проект, у меня было предупреждение о том, что:

Отсутствует SDK в целевом Box2D: iphoneos2.2

И когда я попытался скомпилировать, я получил две ошибки:

Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 не удалось с кодом выхода 1

Консольная /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 не удалось с кодом выхода 1

edit: я потыкал еще немного и установил целевой sdk на iphoneos4.3 (последний), и теперь я получаю только одну ошибку:

[BEROR] Нет архитектур для компиляции (ONLY_ACTIVE_ARCH = ДА, активно arch = i386, VALID_ARCHS = armv7).

Есть идеи почему?

Ответы [ 2 ]

2 голосов
/ 09 июля 2011

Я подозреваю, что проект Box2D довольно старый (из-за ссылки на iphoneos2.2) и что открытие его в более поздней версии XCode не помогло конвертировать все параметры (я говорю это, потому что этодля меня довольно часто встречаются подобные проблемы с более старыми проектами).

В вашем случае я бы предложил отключить флаг «Build active Architecture only», который вы можете найти в настройках сборки вашего проекта.и посмотрим, что получится.Вы также можете подумать о сбросе всех параметров, связанных с архитектурой, на их значения по умолчанию.

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

Если мое предложение соответствуетне помогает, единственный способ, которым я знаю, для устранения проблем такого рода - это проверка project.pbxproj, найденного в вашем пакете проекта Xcode, и избавление от того, что не так (как правило, имеется некоторое дублирование конфигурации или устаревшая информация).

PS: проблема с вашими настройками может быть либо на уровне проекта, либо на целевом уровне, поэтому проверьте оба.

2 голосов
/ 09 июля 2011

Вы пытались перейти к настройкам проекта Box2D и изменить выбранный SDK с "iphoneos2.2" на "Последняя iOS" (или что-то еще, что вы используете в других успешных проектах)?

Редактировать

После вашего обновления кажется, что Box2D настроен на сборку только для устройства, и вы пытаетесь создать его для симулятора iPhone.Вы можете проверить это, попытавшись собрать и запустить на устройстве (в частности, iPhone 3GS или выше).Для лучшего исправления отредактируйте ваш проект Box2D еще немного, отключите опцию «Build active Architecture only» и добавьте i386 и armv6 в список допустимых целевых архитектур.Теоретически это должно прояснить оставшуюся проблему.

...