Инструмент командной строки в Objective-C, используя Foundation? - PullRequest
9 голосов
/ 27 октября 2010

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

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

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

-

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

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

1 Ответ

15 голосов
/ 27 октября 2010

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

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

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!
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...