2010-10-27 16 views
8

उद्देश्य सी में कमांड लाइन उपकरण बनाने का कोई आसान तरीका है?फाउंडेशन का उपयोग कर उद्देश्य-सी में कमांड लाइन उपकरण?

मैं एक्सकोड का उपयोग नहीं करना चाहूंगा, क्योंकि एक्सकोड के लक्ष्य और निष्पादन योग्य हैं, और केवल जटिल चीजें हैं।

मैं क्लासिक तरीका जाना चाहता हूं, बस मेकफ़ाइल बनाएं, कुछ निष्पादन योग्य बनाएं, इसके साथ खेलें।

-

यदि यह संभव नहीं है, वहाँ निष्पादन मैं नियमित रूप से XCode सीएल परियोजना से मिल चलाने के लिए किसी भी तरह से है? यह एक निर्माण और फिर जटिल सामग्री बनाता है।

मैं सिर्फ एक्सकोड के कंसोल के बजाय अपने टर्मिनल का उपयोग करना चाहता हूं।

उत्तर

15

हां। फाउंडेशन फ्रेमवर्क में लिंक करने के लिए बस अपनी फाइलें सामान्य उद्देश्य-सी फाइलों के रूप में लिखें और जीसीसी या क्लैंग के साथ संकलित करें। यह एक सामान्य सी कार्यक्रम से शायद ही अलग है।

सरल उदाहरण:

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! 
संबंधित मुद्दे