Не удалось создать мой проект на xcode 4.2

#ios #xcode #xcode4.2

#iOS #xcode — код #xcode4.2

Вопрос:

Я обновил свой xcode до версии 4.2 (используя snow leopard).Ранее я использовал Xcode 3.2.6, и мой проект успешно строился с его помощью. Теперь я не могу его собрать, вместо этого Xcode выдает следующую ошибку

 ld: warning: option -A is obsolete and being ignored
ld: entry point (start) undefined.  Usually in crt1.o for architecture armv7
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/clang failed with exit code 1
 

Ошибка, похоже, какая-то ошибка компилятора, но я не могу ее понять.:(
Я поискал его в Гугле, но пока безуспешно.
Пожалуйста, предложите какое-нибудь решение.

Ответ №1:

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

  -e symbol_name
    Specifies the entry point of a main executable.  By default the entry name is "start" which
    is found in crt1.o which contains the glue code need to set up and call main().
 

со справочной страницы ld.

Ответ №2:

Первая ошибка означает, что компоновщик (ld) в Xcode 4.2 обнаружил опцию (-A), которая больше не поддерживается.

Если вам больше не нужно создавать один и тот же проект Xcode в Xcode 3.2.6, то

  1. проверьте настройки сборки вашего проекта, чтобы убедиться, что у вас не указано ‘-A’ Раздел привязки настроек сборки.
  2. нажмите на кнопку «Проверить настройки»введите описание изображения здесь, чтобы определить любые другие настройки проекта, которые могут вызвать проблемы.

Ваша вторая ошибка может быть вызвана тем, что Xcode 4.2 по умолчанию использует архитектуру сборки armv7, которая не указана в вашем проекте Xcode (поскольку он был создан с использованием Xcode 3.2.6). Если вам нужно создать двоичные файлы для armv6, добавьте их в свой список архитектуры сборки.

Ответ №3:

Проверьте, используете ли вы следующие флаги, это вызовет эту ошибку -nostdlib и -noconfig .

Ответ №4:

Я смог устранить эту проблему, обновив «Цель разработки iOS» в разделе «Цель моего проекта»> «Настройки сборки»