Инструмент командной строки в Objective-C с помощью Foundation?

есть ли простой способ создать инструмент командной строки в Objective C?

Я бы предпочел не использовать XCode, потому что XCode имеет цели и исполняемые файлы и просто сложные вещи.

Я хотел бы пойти классическим способом, просто создать Makefile, скомпилировать что-то получить исполняемый файл, играть с ним.

--

Если это невозможно, есть ли способ запустить исполняемый файл, который я получаю от обычного проекта XCode CL? Он создает сборку и снова-сложный материал.

Я просто хочу использовать свой терминал вместо консоли XCode.

1 ответов


да. Просто напишите свои файлы как обычные файлы Objective-C и скомпилируйте с помощью GCC или Clang, связывая в рамках Foundation. Это почти не отличается от обычной программы C.

простой пример:

chuck$ cat > main.m

#import <Foundation/Foundation.h>

int main() {
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    NSArray *words = [NSArray arrayWithObjects:@"Hello,", @"world!", @"Check", @"this", @"out!", nil];
    NSLog(@"%@", [words componentsJoinedByString:@" "]);
    [pool release];
    return 0;
}

chuck$ cc -framework Foundation -o my-app main.m
chuck$ ./my-app
2010-10-26 22:32:04.652 my-app[5049:903] Hello, world! Check this out!