Ubuntu下Object-C開發環境搭建

來源:互聯網
上載者:User
查詢了一些安裝和配置環境。由於自己早就告別了vmware,也就早自己的ubuntu下開始搭建編譯obj-c的編譯環境。不過我開始是自己早ubuntu software center種找到一個gnustep-devel 的一個Project Manager IDE,然後直接install的。所以,我不知道是不是我安裝了這個IDE之後,後來又按照文章的順序執行了一遍,得到了hello world。我有點不敢確定的,是不是原來我的IDE已經成功了,這個文章沒有起到作用,還是說,2個都成功搭建了,只是重複了一遍而已。不過最後的結果是好的,就是成功了。如果以後要重新搭建的話,現看下直接從ubuntu software center安裝的是不是成功了。也請大家安裝的時候看下,避免重複安裝,浪費時間。


[日期:2010-08-24] 來源:Lnux社區  作者:liangmangui

一.下午1點到5點半,iPhone的application介紹會,做了4個簡單的application,確實很有意思。

二.以下共有三種方法,只有第三種方法成功了

1.You can program the Objective-C without MacBook.
Please refer the below link to install Objective-C compiler in you Ubuntu

 

mchine.

http://d.hatena.ne.jp/tomute/20090112/1231809116

2.Ubuntu
9.10下搭建Object-C開發環境(轉)(這個寫的很全,但是沒有成功)
Object-
C是Apple對C語言的擴充,但是它配套的開發環境必須要運行在Leopard系統上,而這個系統又要運行在Mac機,無奈我還是個學生,再換個蘋果本
不太實現,把現在的系統格了換Leopard實在是捨得,當初配置這個系統沒少花精力呢,虛擬機器上裝Leopard效能又不能讓人接受,無奈只能嘗試搭建
Xcode以外的開發環境,很幸運,還真有,Ubuntu
下用GNUStep就可以了,網上有很多講解安裝的過程,但是講的都不詳細,而且還有好多是錯的,更無奈的是竟然還有N多的人也不驗證一下內容正確不正確,就拿來轉貼,給搜尋帶來了很多的麻煩,無奈自己又的研究,又是查資料,終於搞定了,現在和大家說一下具體的步驟吧:

1)安裝gnustep-devel,可以通過sudo apt-get  install gnustep
gnustep-devel安裝,但是安的時候會告訴你有好多包已經不能用了,更好的辦法是用新立得軟體包管理器安裝,開啟之後輸入:gnustep-
devel,右鍵標記安裝,會提示你還需要裝很多其它的依賴包,先確定,然後點應用就可以了。

2)安裝完畢後,也是最關鍵的一步,是配置gnustep-make的環境變數,與windows不同,Ubuntu

使用者環境變數是放在.bashrc檔案裡面的,這個檔案在使用者的根目錄下,當然,你是找不到的,因為是隱藏的,Ubuntu系統想要隱藏檔案的話是在檔案
名前面加.,顯示隱藏檔案的方法是Ctrl+H,所以,在使用者的根目錄下,顯示隱藏檔案後,找到.cshrc
[bing註:我早安裝的時候沒有看到這個,直接是在bashrc的最後copy這個配置的,不知道原來作者是不是筆誤,或者是我的版本是ubuntu 10.多的,沒有那個檔案
],在最後面加入如下配置:

#set GNUstep
GNUSTEP_ROOT=/usr/share/GNUstep
export GNUSTEP_ROOT
source /usr/share/GNUstep/Makefiles/GNUstep.sh

如果不加入上面的配置的話,在編譯objective-c源檔案的時候會提示/common.make,/tool.make找不到,也是這裡困擾了我好久,所以這個很重要.

完成上面的配置生,object-c的開發環境我們就已經搭建好了,接下來就是用gnustep開發一個object-c來測試一下了

1)應用程式->編程->Project Manager IDE->File->New->Source File->Objective-C Language Source File

然後寫一個簡單的Hello World程式

2)File->Save儲存在一個目錄裡面,記得儲存成Objective-C類型的,可以看到檔案的類型是.m

3)然後在這個目錄裡面建立一個空檔案,不需要任何檔案類型,但是名字必須是GNUmakefile,內容如下:

include $(GNUSTEP_MAKEFILES)/common.make

TOOL_NAME = LogTest
LogTest_OBJC_FILES = source.m

include $(GNUSTEP_MAKEFILES)/tool.make

這裡的LogTest可以換成任務名字,代表編譯之後的可執行檔名,只要兩個地方統一就好了,source.m是你剛剛儲存好的原檔案名稱,換成你
自己的,這裡的$(GNUSTEP_MAKEFILES)引用的是我們設定好的gnustep-make的path,所以沒有第2步的設定,這裡是找不到
對應的目錄的。

4)寫好這個檔案後,在終端進入這個目錄,然後執行make,如果一切沒問題的話,目錄中就會多出來一個obj目錄,裡面是編譯好的可執行檔。

5)再執行./obj/LogTest,就可以看到啟動並執行結果了,這裡的LogTest注意,和上面對應,當然可以換成你自己的

3.Ubuntu
下Object-c的開發環境搭建(這個簡單成功了)

Gnu編譯器只支援最基本的部分Object-c, 為了Ubuntu
下使用整個的Objective-C的Cocoa /openStep環境,所以必須安裝gcc和gcc和Objective-C支援的包,GNUstep的環境.

首先安裝gnustep和gobjc

sudo apt-get install gobjc gnustep gnustep-devel

弄個Hello world的代碼嘗試編譯一次

#import <stdio.h>

int main( int argc, const char * argv[] ) {
    printf("hello world/n");
    return 0;
}

然後執行編譯:

gcc hello.m -o hello

如果調用到了 object-c的庫, 以上編譯命令會出錯, 需要用下面命令:

gcc `gnustep-config --objc-flags` -lgnustep-base hello.m -o hello

然後允許代碼看看

./hello

輸入了

hello world

OK了

 

 

//這是我的測試代碼:

 

#import <stdio.h>
#import <Foundation/Foundation.h>
int main( int argc, const char * argv[] ) {
    printf(" say: hello world/n");
    printf("use the foudation/n");
    NSLog(@"NSlog Object C/n");
    return 0;

}

 

output:

 

host@host-laptop:~$ gcc `g-o testconfig --objc-flags` -lgnustep-base test.m -o test
host@host-laptop:~$ ./test
 say: hello world
use the foudation
2011-03-05 12:32:58.365 test[10910] NSlog Object C
host@host-laptop:~$

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.