UIKit SDK 3.0 ошибка - PullRequest
       11

UIKit SDK 3.0 ошибка

3 голосов
/ 28 мая 2009

Я использую iphone_sdk_3.0_beta_5__9m2735 SDK. Когда я пытаюсь скомпилировать свой код, используя опцию simulator 3.0, я получаю следующую ошибку. Код компилирует для отдыха все опции симулятора то есть 2.0, 2.1, 2.2, 2.2.1 При компиляции моего кода я получаю следующую ошибку

from /Users/videomac/manish/EXPLab/2009-05-27-11-20 myApp_LL_2/myApp_Prefix.pch:7:
In file included from /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h:30,
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UILocalizedIndexedCollation.h:11: error: syntax error before 'AT_NAME' token
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UILocalizedIndexedCollation.h:19: error: syntax error before '}' token
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UILocalizedIndexedCollation.h:21: fatal error: method definition not in @implementation context

Ошибки находятся в файле UILocalizedIndexedCollation.h, который является файлом SDK. Я использую UIKit Framework SDK 3.0. Может кто-нибудь сказать мне, что я должен сделать, чтобы удалить эту ошибку?

Ответы [ 3 ]

6 голосов
/ 12 июня 2009

Я проследил эту проблему до используемой версии компилятора. Из того, что я могу сказать, [УДАЛЕНО] требуется GCC 4.2, в то время как iPhone SDK 2.x работает только с GCC 4.0.

Вот способ исправить это.

В вашем Target Info выберите Build разделитель и найдите раздел Compiler Version. Тогда:

  1. Выберите строку C/C++ Compiler Version
  2. Установить значение по умолчанию GCC 4.0
  3. В левом нижнем элементе управления нажмите Add Build Setting Condition
  4. Слева выберите Device - iPhone OS 3.0
  5. Справа выбрал GCC 4.2
  6. Повторите шаги с 3 по 5, теперь с Simulator - iPhone OS 3.0 на шаге 4.
4 голосов
/ 23 ноября 2009

Инженер Apple подтвердил, что у них есть ошибка в фреймворке UIKit:

У нас есть простой способ обойти эту ошибку UIKit. В UILocalizedIndexedCollation.h измените это:

UIKIT_EXTERN @interface UILocalizedIndexedCollation : NSObject
to
UIKIT_EXTERN_CLASS @interface UILocalizedIndexedCollation : NSObject

Denis2342

0 голосов
/ 28 мая 2009

Во-первых, вы должны обсудить бета-продукты здесь.

Однако это не связано с бета-версией. У вас есть ошибка в одном из ваших собственных заголовочных файлов, вероятно, отсутствует символ @end.

Кстати, Google мог бы решить это за вас, а не спрашивать здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...