使用Foundation的Objective-C中的命令行工具?

时间:2010-10-27 05:04:15

标签: objective-c cocoa xcode

有一种在Objective C中创建命令行工具的简单方法吗?

我宁愿不使用XCode,因为XCode有目标和可执行文件,而且只是复杂的东西。

我想以经典的方式,只需创建一个Makefile,编译一些可执行文件,然后玩它。

-

如果这不可能,有没有办法运行我从常规XCode CL项目获得的可执行文件?它创建了一个构建和复杂的东西。

我只想使用我的终端而不是XCode的控制台。

1 个答案:

答案 0 :(得分:15)

是。只需将您的文件编写为普通的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!