Ошибка "Foundation.h: такой файл не найден" при компиляции Objective-C в WINDOWS
Я новичок в Objective-C, я попытался скомпилировать небольшую программу Hello world для запуска, я использую Windows Vista и консоль оболочки, мой код:
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
// insert code here...
NSLog(@"Hello, World!");
[pool drain];
return 0;
}
результат оболочки показывает мне следующую ошибку:
Foundation.h: no such file found
Моя команда для компиляции:
gcc -o hello hello.m
Я буду признателен за любую помощь, спасибо заранее:)
2 ответа
Решение
Foundation, а также NSAutoreleasePool и NSLog входят в состав какао и какао-touch, эксклюзивных рам Apple для ObjC. Хотя вы можете использовать Objective-C, Foundation и все базовые классы и функции доступны только в Mac OS X и iOS.
У вас есть три варианта, если вы хотите продолжить работу с ObjC и классами
- Пишите все сами (это будет сложно, так как вы говорите, что вы новичок, и поэтому у вас не будет знаний о занятиях)
- Используйте что-то вроде GNUStep, который пытается клонировать Foundation
- Переключиться на Mac OS X
Попробуйте написать это в вашей командной строке. У меня была такая же проблема, и она работала для меня.
gcc -I"c:/GNUstep/GNUstep/System/Library/Headers" -L "c:/GNUstep/GNUstep/System/Library/Libraries" -o hello hello.m -lobjc -lgnustep-base -fconstant-string-class=NSConstantString