Windows下編譯objective-C

http://www.gnustep.org/experience/Windows.html

ftp://ftpmain.gnustep.org/pub/gnustep/binaries/windows
在上面的網站下載 
gnustep-core-0.23.1-setup.exe
gnustep-system-0.23.0-setup.exe
Gorm-1.2.10-setup.exe
SystemPreferences-1.1.0-setup.exe
注意都下最新版本的吧.
下好後,都是一路NEXT安裝就好了.
假設你裝在D盤,
>代碼應該寫在什麼地方 
然後說寫代碼,代碼寫在哪裏都可以.就放C:/好了.
>怎麼生成運行
假設你寫一個程序叫 hello.m, 在c:/下面.
那麼打開cmd 用如下命令去編譯,
D:\GNUstep\mingw\bin\gcc.exe hello.m -o hello.exe -I D:\GNUstep\GNUstep\System\Library\Headers -L D:\GNUstep\GNUstep\System\Library\Libraries -lobjc -fobjc-exceptions -lgnustep-base -fconstant-string-class=NSConstantString -enable-auto-import
長是長了點,但是很容易懂的,簡單說一下,
最前面的是指定gcc.exe,這個你是肯定知道的.
後面的 -I xxx 和 -L xxxx 分別是指編譯的時候用到的頭文件和庫,
主要是cocoa的一些庫吧.
再後面是一堆 Flag,也就是編譯選項,看名字都拆差不多了.
>我現在的問題是不知道代碼應該寫在哪裏 
>是新建TXT文檔還是用什麼其他的工具?
看了上面的編譯命令,我想你已經知道怎麼寫了吧,
>能不能給推薦一個
VIM你用過麼?會用的話,它的好處就不多說了. 
我正在用它,自定義熱鍵,
一個F8就過去編譯,一個C-F8就看到運行結果,
並不要你真正的去CMD下編譯運行也可以的
不會的話,就UE, EditPlus, 只要有objective c 語法提示的都可以吧.
>是新建TXT文檔還是用什麼其他的工具?
說白了,就是c程序啊,當然是txt格式的了.
好了,重點的,安裝 和 編譯 都已經寫給你了, 自己再研究一下吧.
PS.順便說下,這個環境的OC,不支持2.0特性,
直接一點講,不支持OC的屬性操作,
也就是那個 @property 標籤識別不了的.

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

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

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

轉自: http://blog.csdn.net/hulefei29/archive/2010/02/21/5314018.aspx

Objective-C現在幾乎已經變成了蘋果的專利了,可以直接在蘋果的Xcode上編譯Objective-C程序,但是在Windows平臺下的編譯工具就寥寥無幾了,本身這種語言用的人就不是很多。今天在網上突然看到了有人發帖,可以在Windows平臺下編譯Objective-C,就抱着好奇的心態試了試。沒想到,居然成功了,現在就把怎樣搭建Objective-C編譯平臺的經驗拿出來和大家分享。

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

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

#import <Foundation/Foundation.h>

int main (int argc, const char *argv[]) 
{
NSAutoreleasePool 
*pool = [[NSAutoreleasePool alloc] init];
NSLog(
@"Hello World!");
[pool drain];

return 0;
}

3、配置環境變量
這一步很重要。GNUstep.sh是用來設置GNUstep開發環境變量的,如果沒有執行,就會有很多頭文件,庫文件,命令找不到

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

include $(GNUSTEP_MAKEFILES)/common.make

TOOL_NAME
=Test
Test_OBJC_FILES
=HelloWorld.m

include 
$(GNUSTEP_MAKEFILES)/tool.make


可以修改上面的黑體部分

然後就是
make

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

OK 搞定了。

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

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

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

 GNUstep 安裝

原文地址 http://i4y.jsfirm.cn/page/read/127

由於暫時還沒有Mac的本本,只能現在Linux上練習Objective-C的語法了,安裝的過程並不順利,這裏採用的平臺依舊是Debian, Windows也是可以的,

關於GNUstep 就不多說了,自己去官網看吧,總之就是一個跨平臺的Objective-C的編譯運行環境,下面開始安裝:

#apt-get install gnustep

#apt-get install gnustep-devel

#apt-get install libgnustep-base-dev

#apt-get install gnustep-games

這樣就安裝完畢了,(上面的安裝包可以放在一起,一次安裝完的,不要小看了那幾個包,shitou可是花了很大功夫才找到的,爲了表示尋找的痛苦,還是寫長點吧,^_^)

然後就是配置了,Firstly:

#echo 'export LIBRARY_PATH=/usr/lib/GNUstep/System/Library/Libraries' >> ~/.profile

#echo 'export OBJC_INCLUDE_PATH=/usr/include/GNUstep/Headers' >> ~/.profile

#source ~/.profile

然後執行GNUstep.sh的腳本,自動加載其他環境PATH:

#chmod +x /usr/share/GNUstep/Makefiles/GNUstep.sh

#source /usr/share/GNUstep/Makefiles/GNUstep.sh

也加入.profile文件, 以便用戶登陸系統時加載

#echo 'source /usr/share/GNUstep/Makefiles/GNUstep.sh' >> ~/.profile

這樣就設置完畢了,然後就是寫個ObjC的程序測試下了,在測試時可能會報的錯是NXConstantString之類的錯誤, 辦法就是:

#gcc -o hello hello.m -fconstant-string-class=NSConstantString -lobjc -lgnustep-base

這樣就大功告成了, 好了,下面開始正式學習Objective-C.........

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

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

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

Windows上使用Objective-c和Cocoa

轉自 : http://www.cnblogs.com/2018/archive/2010/12/25/1916764.html

最近進行iPhone的開發,使用了Cocoa,感覺Cocoa設計很精緻,Objecitive-c語法也很簡單和易用,因此想是否在Windows下也有可以運行的環境,這樣可以方便使用,否則只在MAC上用,安裝虛擬機或購買硬件都比較麻煩,搜索了一下資料,還真有這方面的工具。

關於cocoa跨平臺的問題

http://stackoverflow.com/questions/2049099/cocoa-programming-on-windows

GNUStep

http://www.gnustep.org/

The purpose of this project is to create a free and open version of the Cocoa (formerly known as NeXTSTEP/OpenStep) APIs and tools for as many platforms as possible.

GNUstep provides a robust implementation of the AppKit and Foundation libraries as well as the development tools available on Cocoa, including Gorm (the InterfaceBuilder) and ProjectCenter (ProjectBuilder/Xcode). GNUstep currently supports Unix (GNU/Linux and GNU/HURD, Solaris, NetBSD, OpenBSD, FreeBSD, Darwin) and Windows.

可見這個開源項目建構了和Xcode InterfaceBuilder及Objective-c Cocoa的運行環境等系列的工具

http://www.nongnu.org/gstutorial/zh_TW/index.htmlGnuStep中文文檔和參考

http://ftp.gnustep.org/pub/gnustep/binaries/windows/ 這個可以下載Windows版本下的各個執行文件

Cocotron

http://www.cocotron.org/

Cocotron項目的目標是實現一個跨平臺的類似蘋果公司Cocoa的Objective-C API。包括AppKit、Foundation、Objective-C運行庫和支持其他函數庫,諸如CoreGraphics和CoreFoundation。

http://www.cocoachina.com/b/?p=144

通過比較gnuStep比較完整,可以作爲整個環境的體驗和學習開發使用,Cocotron就沒有再細看

GnuSetp安裝和使用

http://ftp.gnustep.org/pub/gnustep/binaries/windows/ 在這個路徑可以下載Windows下的執行文件,上層目錄可以看到各個版本的代碼和文檔等等內容

最新版本的安裝

http://www.gnustep.org/experience/Windows.html

objective-c和Cocoa框架的編譯環境

gnustep-msys-system-0.25.1-setup.exe

gnustep-core-0.25.0-setup.exe

gnustep-devel-1.1.1-setup.exe

gnustep-cairo-0.22.1-setup.exe

類似Interface Builder的界面設計工具

gorm-1.2.12-setup.exe

例子工具

gnustep-examples-1.3.0.tar.gz

gworkspace-0.8.8.tar.gz

ProjectCenter-0.6.0.tar.gz

SystemPreferences-1.1.0-1-setup.exe

上面這個版本的ProjectCenter需要自己編譯使用[代碼中有相關的文檔說明]

http://www.jaysonjc.com/programming/objective-c-programming-in-windows-gnustep-projectcenter.html

是一個使用已有版本的功能說明,使用以下:

gnustep-system-0.22.0-setup.exe

gnustep-core-0.22.0-setup.exe

gnustep-devel-1.0.0-setup.exe

gorm-1.2.8-setup.exe

ProjectCenter-0.5.0-setup.exe

按照以上的順序安裝,就把編譯環境項目工具、界面工具安裝完成

[我的機器上安裝完後(Windows7 64)Build項目時提示make文件找不到,沒有找到好的解決辦法,有空可以再看看ProjectCenter的代碼,有ProjectCenter熟悉一下工程的組織就行了,可以使用make命令行自己編譯]

http://www.gnustep.org/experience/PierresDevTutorial/index.html

這個地址講述了ProjectCenter gorm建立項目和界面的步驟

安裝好的程序組菜單,Shell可以啓動MingW Shell環境,此時可以使用gcc g++ make等工具,對於linux等熟悉的對這個很清楚

Gorm ProjectCenter是啓動的命令

image

Shell窗口:可以編譯項目等操作

image

Gorm窗口:設計界面和組件佈局

image

ProjectCenter窗口:項目建立、代碼高亮察看

image

簡要總結

GnuStep可以使用Objective-c和Cocoa,注意這個Cocoa和apple的官方cocoa實現還是有差別的。

這個工具實現了AppKit,對於iOS的UIKit沒有實現

不過只要對這個熟悉了以後,那麼進行iPhone/iPad和MAC的開發很容易

發佈了18 篇原創文章 · 獲贊 7 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章