Добавление пустого файла .c в проект Xcode Cocoa вызывает тысячи ошибок - PullRequest
6 голосов
/ 12 мая 2011

У меня есть проект Xcode для моего приложения Cocoa.Пока это все Objective-C.

Проблемы начались после того, как я добавил новый файл .c из меню (Добавить файл C и заголовок): test.c и заголовок test.h.

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

NSObjCRuntime.h: Expected identifier or '(' before '@' token

Оба новых файла, test.c и test.h, не содержат никакого кода, только комментарии заголовка по умолчанию.Что-то должно быть действительно сломано с моей конфигурацией проекта.Когда я удаляю эти два файла, проект компилируется очень хорошо.

Язык проекта установлен на C99.Могу ли я проверить что-нибудь еще?

Спасибо, Марк

Ответы [ 2 ]

16 голосов
/ 12 мая 2011

если файлы, которые вы компилируете, не содержат ничего, то ваша проблема, скорее всего, в заголовке префикса (расширение: pch)

так что вы просто оборачиваете свои библиотеки в зависимости от языка (в pch):

#ifdef __OBJC__
#import <Foundation/Foundation.h>
#endif
4 голосов
/ 12 мая 2011

Проверьте ваш .pch файл. Он импортирует заголовок Objective-C без соответствующей защиты препроцессора.

Вы должны убедиться, что любой заголовок или структура Objective C, импортированные в предварительно скомпилированный заголовок, выглядит примерно так:

#if defined(__OBJC__)
    #import <Cocoa/Cocoa.h>
    #import <CoreData/CoreData.h>
    #import "MyConstants.h"
    ...
#endif
...