如何在Windows上編譯Objective-C

Objective-C如今幾乎已經變成了蘋果的專利了,能夠直接在蘋果的Xcode上編譯Objective-C程序,可是在Windows平臺下的編譯工具就寥寥無幾了,自己這種語言用的人就不是不少。今天在網上忽然看到了有人發帖,能夠在Windows平臺下編譯Objective-C,就抱着好奇的心態試了試。沒想到,竟然成功了,如今就把怎樣搭建Objective-C編譯平臺的經驗拿出來和你們分享。php

一、安裝GNUstephtml

GNUstep Windows Installer提供了Windows平臺下的Object-C的模擬開發環境,一共有四個軟件包,其中GNUstep System和GNUstep Core是必裝的,GNUstep Devel和Cairo Backend是選裝的。只安裝前兩個就夠了。objective-c

二、編寫Objective-C代碼shell

安裝完成後,在開始菜單裏的GNUstep選項裏執行shell,就能打開命令行。直接在Windows裏進入C:/GNUstep/home/Administrator(個人是Administrator,可能有的不同)目錄,在這裏用你喜歡的工具(如今UltraEdit和Notepad++編輯器好像能夠代碼高亮)編寫Object-C程序。
如:HelloWorld.mwindows

#import <Foundation/Foundation.h> 
   
 int main (int argc, const char *argv[]) {  
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];  
    NSLog(@"Hello World!");  
    [pool drain];  
 
    return 0;  
}

三、配置環境變量iphone

這一步很重要。GNUstep.sh是用來設置GNUstep開發環境變量的,若是沒有執行,就會有不少頭文件,庫文件,命令找不到編輯器

在一個目錄裏寫好了源代碼之後,編寫一個make配置文件,名字必須叫GNUmakefile,內容是wordpress

include $(GNUSTEP_MAKEFILES)/common.make  
TOOL_NAME=Test 
Test_OBJC_FILES=HelloWorld.m  
include $(GNUSTEP_MAKEFILES)/tool.make

能夠修改上面的黑體部分工具

而後就是學習

make


命令運行成功就能夠看到新增了一個obj目錄,裏面就有你要的可執行文件和.o文件。

OK 搞定了。

小結:如何在Windows編譯Objective-C的內容介紹完了,但願本文對你有所幫助!

 

1.下載GNUStep

http://ftpmain.gnustep.org/pub/gnustep/binaries/windows/

下載

gnustep-msys-system-x.x.x-setup.exe

gnustep-core-x.x.x-setup.exe

gnustep-cairo-x.x.x-setup.exe

gnustep-devel-x.x.x-setup.exe

將下載的GNUStep安裝,好比C:\GNUStep

2. 下載JEdit

http://www.jedit.org/index.php?page=download

JEdit 是Freeware,能夠用來編輯 .m 文件 .m 是Object C缺省後綴。 .m 至關於 .c 文件

3. 一個Object C教材

http://www.otierney.net/objective-c.html

———————————————

4. 安裝後,執行msys.bat 啓動 GNUStep 環境 (類Linux環境)

5. 編寫示例程序

fraction.h

#import <Foundation/NSObject.h>

@interface Fraction: NSObject {
     int numerator;
     int denominator;
 }

-(void) print;
 -(void) setNumerator: (int) n;
 -(void) setDenominator: (int) d;
 -(int) numerator;
 -(int) denominator;
 @end

fraction.m

#import "fraction.h"
 #import 

@implementation Fraction
 -(void) print {
     printf( "%i/%i", numerator, denominator );
 }

-(void) setNumerator: (int) n {
     numerator = n;
 }

-(void) setDenominator: (int) d {
     denominator = d;
 }

-(int) denominator {
     return denominator;
 }

-(int) numerator {
     return numerator;
 }
 @end

main.m

#import 
#import "fraction.h"

int main( int argc, const char *argv[] ) {
     // create a new instance
     Fraction *frac = [[Fraction alloc] init];

    // set the values
     [frac setNumerator: 1];
     [frac setDenominator: 3];

    // print it
     printf( "The fraction is: " );
     [frac print];
     printf( "\n" );

    // free memory
     [frac release];

    return 0;
 }

6. 編寫Makefile

在當前目錄下建立GNUmakefile

include $(GNUSTEP_MAKEFILES)/common.make

TOOL_NAME = Hello
 Hello_OBJC_FILES = main.m fraction.m

include $(GNUSTEP_MAKEFILES)/tool.make

6. 編譯程序

$ make

將建立 obj目錄 運行  hello.exe

The fraction is: 1/3

這樣環境就搭好了,你就能夠繼續學習 Object C了

最終寫iphone程序通常仍是要Mac OS.

--------------------------------------------------------------------

http://mobile.51cto.com/iphone-281182.htm

http://www.imobilebbs.com/wordpress/?p=3081

相關文章
相關標籤/搜索