#iphone #xcode4.2
#iPhone #xcode4.2
Вопрос:
Я только что обновился с Xcode 4 до Xcode 4.2, и теперь я получаю следующую ошибку при сборке для симулятора:
ld: in /Users/rstaicut/Library/Developer/Xcode/DerivedData/iphone/Build/Intermediates/iphone.build/QA Server-iphonesimulator/Project iPhone Debug.build/Objects-normal/i386/CartController.o, could not parse object file
/Users/rstaicut/Library/Developer/Xcode/DerivedData/iphone/Build/Intermediates/iphone.build/QA Server-iphonesimulator/Project iPhone Debug.build/Objects-normal/i386/CartController.o:
**Malformed metadata record for architecture i386**
**Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/llvm-gcc-4.2 failed with exit code 1**
Следует отметить, что для этого обновления я изменил компилятор на LLVM GCC 4.2, и я использую armv6 и armv7 для архитектур. Я получаю эту ошибку только для симулятора, сборка завершается для устройства.
Есть идеи, что может означать искаженная запись метаданных?
Ответ №1:
Наконец-то симулятор заработал. Это то, что я изменил:
-
В разделе Проект> Настройки сборки> Архитектуры> Допустимые архитектуры я вынул i386 и оставил только armv6 и armv7. Под архитектурами у меня есть только armv6 и armv7
-
Я изменил компилятор с LLVM GCC 4.2 на компилятор Apple LLVM 3.0 (в разделе Проект> Настройки сборки> Параметры сборки> Компилятор для C / C / Objective-C
-
Изменена цель развертывания iOS с iOS 3.1 на iOS 4.0
-
Последним шагом было нажать «Проверить настройки» (кнопка посередине внизу). Вам будет предложено изменить некоторые настройки компилятора с LLVM GCC на Apple LLVM Compiler 3.0. Нажмите OK.
После этого мой симулятор начал волшебным образом работать. Ошибок нет, хотя много предупреждений из-за изменения компилятора.
Надеюсь, это поможет всем, кто сталкивается с этой проблемой.