Windows 下的 Objective-C 開發環境配置簡介

來源:互聯網
上載者:User
文章目錄
  • 安裝
  • 開發
  • 執行
  • Make
  • 參考

我也是黑蘋果一族,不買 Mac 的原因各不相同,這裡就不說了。即便是裝了黑蘋果,由於需要在 Windows 上長時間工作,就想能不能在 Win 上弄個 OC 的編譯環境,這樣可以方便學習 OC,省的來回切換。

這篇文章的大部分內容均來自於網上,具體可參見《參考》部分。本文是作者在實際使用後整理所得,如有疏漏,請不吝賜教,謝謝。

安裝

上網搜了搜,這方面的資料真是不少,必備的東東是 GNUstep Developer Tools,可以參考這個連結 Windows Installer,安裝很簡單,按照順序 GNUstep System、GNUstep Core、GNUstep Developer 安裝即可,過程就不表述了。

安裝完成後,我們可以用“程式 -> GNUstep -> Shell” 來啟動一個類比 UNIX 控制台,在這下面可以完成開發、編譯、執行等工作。

開發

首先我們來寫一個 HelloWorld,簡單起見,我們在 C 盤根目錄下建立 HelloWorld.m 檔案,並儲存,代碼如下:

 

[cpp] view plaincopy

  1. #import <Foundation/Foundation.h>  
  2.   
  3. int main (int argc, const char *argv[])   
  4. {  
  5.     NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];  
  6.     NSLog(@"Hello World!");  
  7.     [pool drain];  
  8.       
  9.     return 0;  
  10. }  

 

註:關於用什麼工具來編寫代碼,由於我也是初次使用,並沒有特別好的工具推薦,我自己使的是 UltraEdit。

編譯

由於 HelloWorld.m 是在 C 盤根目錄下,所以首先我們將路徑切換到 C 盤根目錄:

 

[plain] view plaincopy

  1. $cd C:\  

註:cd 這種方式同樣適用於切換到任意磁碟機或任意子目錄下,路徑的組織圖與 windows 沒有區別,不區分大小寫。

 

編譯成目標碼

 

[plain] view plaincopy

  1. gcc -fconstant-string-class=NSConstantString -c HelloWorld.m -I /GNUstep/System/Library/Headers  

執行上面的命令後,控制台不會有任何輸出,這是正確的,否則你需要去檢查原因了。同時在 C 盤根目錄下會產生一個 HelloWorld.o 的目標檔案,在下一步,我們將用它來編譯成可執行檔。

 

 

編譯成可執行檔

 

[plain] view plaincopy

  1. gcc -o HelloWorld HelloWorld.o -L /GNUstep/System/Library/Libraries/ -lobjc -lgnustep-base  

C 盤根目錄下會產生 HelloWorld.exe

 

執行

我們可以直接在 Windows 控制台下執行 HelloWorld.exe,也可以在 Shell 視窗中執行:

在 Shell 視窗輸入:

 

[plain] view plaincopy

  1. ./HelloWorld.exe  

 

 

輸出如下:

[plain] view plaincopy

  1. 2011-09-23 13:22:42.828 helloworld[5484] Hello World!  
關於工作路徑

我們做開發時,項目不可能放在 C 盤根目錄下,一般都是有組織的,那麼如何編譯這類的檔案呢?其實方法很簡單,使用 cd 命令,進入到 .m 所在的目錄下,然後執行編譯。

Make

上面的編譯過程很繁瑣,稍有不慎就可能輸入錯誤,造成編譯失敗,其實還有一個更簡單的方法,就是建立一個 make 檔案,對於 GNUstep 來說,make 檔案名稱必須是“GNUmakefile”,內容如下:

 

[html] view plaincopy

  1. include $(GNUSTEP_MAKEFILES)/common.make   
  2.   
  3. TOOL_NAME=HelloWorld<strong>  
  4. </strong>HelloWorld_OBJC_FILES=HelloWorld.m    
  5.   
  6. include $(GNUSTEP_MAKEFILES)/tool.make   

HelloWorld 關鍵字部分為可替換為實際內容。GNUmakefile 檔案要求與 .m 檔案在同一目錄下。

 

 

make 的執行很簡單,進入 “GNUmakefile” 所在的目錄,在 Shell 視窗中執行 “make” 即可。這會在 “GNUmakefile” 所在目錄下產生一個 obj 目錄,obj 下包含了可執行檔和目標檔案等。

後記

 

簡簡單單,基本上沒什麼波折,就是工作路徑的問題煩了我一下,因為有人說在 GNUstep 安裝目錄下會有一個 “C:\GNUstep\home\username” 目錄,可我安裝後並沒有類似的東東,也許是版本不一致或是別的什麼原因吧,這已經不是問題了。

註:上面的問題是這樣的,後來我發現這個 HOME 還是有的,啟動 shell 後,輸入 pwd 命令,得到當前工作路徑為 /home/username,實際位置位於 “D:\GNUstep\msys\1.0\home\username”。

參考
  1. Objective-C:GCC+GNUstep配置 - 兔子吃南瓜
  2. Windows下編譯objective-C 
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.