windows下關于Objective-C開發環境的配置

最近IOS一直很火,也想學習以以下OC開發,一般裝個虛擬機,然后裝個mac,我相信大多數人的機子跑不起來或者很卡,所以之前借鑒了一個文章,就是關于在windows下配置OC開發環境,這里我把自己的安裝說一下,順便以后查閱的時候方便查找。

1.首先要下載這4個東西:http://www.gnu.org/software/gnustep/experience/Windows.html

2.然后還有codeblocks:http://www.codeblocks.org/downloads/binaries

3.下面就是開始配置編譯器。開啟codeblocks后

進入Settings->Compiler and debugger...,選擇GNU GCC Compiler編譯器,按“Copy”按鈕,并重新命名為GNUstep MinGW Compiler并保存。

codeblocks:windows下關于Objective-C開發環境的配置
可能會有疑問為什么copy,實際上就是新建了一個編譯器。沒什么意思。

4,之后進入Other Options?分頁,錄入:

-fconstant-string-class=NSConstantString -std=c99?

codeblocks:windows下關于Objective-C開發環境的配置

5,連接器設置?Linker stettings

在連接庫(Link Libraries)中添加兩個文件,如圖。

它們在C:\IOS開發\GNUstep\GNUstep\System\Library\Libraries文件夾里找到(在自己的GNUstep安裝路徑中找。)

libgnustep-base.dll.a

libobjc.dll.a

codeblocks:windows下關于Objective-C開發環境的配置

6,指定搜索目錄Search directories

Compiler(編譯器)設置為C:\IOS開發\GNUstep\GNUstep\System\Library\Headers;

codeblocks:windows下關于Objective-C開發環境的配置

Linker(連接器)設置為C:\IOS開發\GNUstep\GNUstep\System\Library\Libraries;

codeblocks:windows下關于Objective-C開發環境的配置

Toolchain里面設置為:C:\IOS開發\GNUstep(設置為GNUstep路徑)

這一步網上好多blog中都未涉及,如果沒有設置可能會引起在run時會出現error:no such file or ...后面這個詞記不清了。)

codeblocks:windows下關于Objective-C開發環境的配置

7.添加Objective-C文件類型支持

?1)進入Settings->Environment...選擇?Files extension handling?添加*.m。如圖:

codeblocks:windows下關于Objective-C開發環境的配置

?2)?進入?Project->Project tree->Edit file types & categories...?,在Sources,?下面添加?*.m?到文件類型列表中。如圖:

?codeblocks:windows下關于Objective-C開發環境的配置
位置放前后無所謂。

?3)?進入?Settings->Editor...,選擇?Syntax highlighting,點擊“Filemasks....”按鈕,在彈出框尾部添加*.m?到文件類型。如圖:codeblocks:windows下關于Objective-C開發環境的配置

4)點擊“Keywords...”按鈕?(緊靠Filemasks...按鈕)?添加下面Object-C的關鍵字到Edit Keywords列表中。

?@interface @implementation @end @class @selector @protocol @public @protected?@private id BOOL YES NO SEL nil NULL self @protocol

如圖:

codeblocks:windows下關于Objective-C開發環境的配置

8,現在為止,環境就算配置好了。下面就是驗證一下配置的正確性。重啟codeblocks。

首先,新建一個工程,選擇File->New->Project…,會出現一個工程類型窗口,選擇Console Application。

codeblocks:windows下關于Objective-C開發環境的配置

之后出現:

codeblocks:windows下關于Objective-C開發環境的配置
隨便選個就行了。

隨便給自己的工程起個名字:

codeblocks:windows下關于Objective-C開發環境的配置
之后進行編譯器選擇,選擇自己剛才調試的compiler:

codeblocks:windows下關于Objective-C開發環境的配置

9,把自己所建工程source中的main.cpp改成main.m.

codeblocks:windows下關于Objective-C開發環境的配置
10,雙擊打開main.m把里面原來的代碼改為objective-c的代碼:

#import
int main(int argc,const char *argv[]){
?NSAutoreleasePool *pool=[[NSAutoreleasePool alloc] init];
?NSLog(@"%@",@"hello?world");
?[pool drain];
?return 0;
}
codeblocks:windows下關于Objective-C開發環境的配置
11,運行,進入Build->Build?and Run或直接按F9.如果運行成功即會出現:

codeblocks:windows下關于Objective-C開發環境的配置



本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/444920.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/444920.shtml
英文地址,請注明出處:http://en.pswp.cn/news/444920.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

如何選擇商鋪投資

如何選擇商鋪? 選擇商鋪時,需要考慮哪些因素呢? 聶先生表示,要看地段,包括周圍的商業環境、停車方便程度、汽車流量、未來發展前景、視覺效果等因素。此外,地域經濟也很重要,必須要有一個好的投…

PaperNotes(6)-GAN/DCGAN/WGAN/WGAN-GP/WGAN-SN-網絡結構/實驗效果

GAN模型網絡結構實驗效果演化1.GAN1.1網絡結構1.2實驗結果2.DCGAN2.1網絡結構2.2實驗結果3.WGAN3.1網絡結構3.2實驗結果4.WGAN-GP4.1網絡結構4.2實驗結果5.WGAN-SN5.1網絡結構5.2實驗結果小結1.GAN 文章: https://arxiv.org/pdf/1406.2661.pdf 代碼: Py…

Spring Security使用

Spring Security 在web應用開發中,安全無疑是十分重要的,選擇Spring Security來保護web應用是一個非常好的選擇。 Spring Security 是spring項目之中的一個安全模塊,可以非常方便與spring項目無縫集成。特別是在spring boot項目中加入sprin…

nginx python webpy 配置安裝

安裝webpy$ wget http://webpy.org/static/web.py-0.34.tar.gz$ tar xvzf web.py-0.34.tar.gz$ cd web.py-0.34$ sudo python setup.py install安裝 Fluphttp://www.saddi.com/software/flup/dist/flup-1.0.2.tar.gz$ wget http://www.saddi.com/software/flup/dist/flup-1.0.2…

PaperNotes(7)-GANs模式坍塌/訓練不穩定

GANs-模式坍塌-訓練不穩定1.訓練不穩定問題相關文章1.1 DCGAN1.2Big-GAN1.3WGAN 、WGAN-GP、SN-WGAN1.4其他工作2.模式坍塌問題相關文章2.1 MAD-GAN2.2 Unrolled GAN2.3 DRAGAN2.4 D2GAN2.5 InfoGAN2.6 Deligan2.7 EBGAN2.8 Maximum Entropy Generators for Energy-Based Model…

thinkphp框架起步認識

先看看thinkphp的文檔吧:這是我在網上找的一個不錯的鏈接地址,對自己有用,同時相信對讀者也有用吧。 http://doc.thinkphp.cn/manual/class.html ThinkPHP 跨模塊調用操作方法(A方法與R方法) 跨模塊調用操作方法 前面說…

leetcode403 青蛙過河

一只青蛙想要過河。 假定河流被等分為 x 個單元格,并且在每一個單元格內都有可能放有一石子(也有可能沒有)。 青蛙可以跳上石頭,但是不可以跳入水中。 給定石子的位置列表(用單元格序號升序表示)&#xff…

PaperNotes(8)-Stein Variational Gradient Descent A General Purpose Bayesian Inference Algorithm

通用貝葉斯推理算法-Stein Variational Gradient DescentAbstract1 Introduction2 Background3 Variational Inference Using Smooth Transforms3.1 Stein Operator as the Derivative of KL Divergence定理3.1引理3.23.2 Stein Variational Gradient Descent4 Related Works5 …

thinkphp的增刪改查

ThinkPHP 添加數據 add 方法 ThinkPHP 內置的 add 方法用于向數據表添加數據,相當于 SQL 中的 INSERT INTO 行為。ThinkPHP Insert 添加數據添加數據 add 方法是 CURD(Create,Update,Read,Delete / 創建,修改,讀取,刪除)中的 Create 的實現&a…

leetcode115 不同的子序列

給定一個字符串 S 和一個字符串 T,計算在 S 的子序列中 T 出現的個數。 一個字符串的一個子序列是指,通過刪除一些(也可以不刪除)字符且不干擾剩余字符相對位置所組成的新字符串。(例如,"ACE" 是…

ThinkPHP 模板循環輸出 Volist 標簽

volist 標簽用于在模板中循環輸出數據集或者多維數組。volist 標簽在模塊操作中&#xff0c;select() 方法返回的是一個二維數組&#xff0c;可以用 volist 直接輸出&#xff1a;<volist name"list" id"vo"> 用 戶 名&#xff1a;{$vo[username]}&l…

MachineLearning(9)-最大似然、最小KL散度、交叉熵損失函數三者的關系

最大似然-最小KL散度-最小化交叉熵損失-三者的關系問題緣起&#xff1a;給定一組數據(x1,x2,...,xm)(x^1,x^2,...,x^m)(x1,x2,...,xm),希望找到這組數據服從的分布。此種情況下&#xff0c;分布規律用概率密度p(x)表征。 問題歸處&#xff1a;如果能夠建模/近似建模p(x)&#…

ThinkPHP redirect 頁面重定向使用詳解與實例

ThinkPHP redirect 方法ThinkPHP redirect 方法可以實現頁面的重定向&#xff08;跳轉&#xff09;功能。redirect 方法語法如下&#xff1a;$this->redirect(string url, array params, int delay, string msg) 參數說明&#xff1a;url 必須&#xff0c;重定向的 URL 表達…

PaperNotes(9)-Learning deep energy model: contrastive divergence vs. Amortized MLE

Learning deep energy model: contrastive divergence vs. Amortized MLEabstract1 Introduction2 Background2.1 stein variational gradient descent2.2 learning energy model**contrastive Divergence**abstract 受SVGD算法的啟發,本文提出兩個算法用于從數據中學習深度能…

windows下的gvim配置

首要任務是下載安裝Gvim7.3 。 安裝完后&#xff0c;gvim菜單中文出現亂碼&#xff0c;在_vimrcset文件中增加&#xff1a; " 配置多語言環境,解決中文亂碼問題 if has("multi_byte") " UTF-8 編碼 set encodingutf-8 set termencodingutf…

leetcode104 二叉樹的最大深度

給定一個二叉樹&#xff0c;找出其最大深度。 二叉樹的深度為根節點到最遠葉子節點的最長路徑上的節點數。 說明: 葉子節點是指沒有子節點的節點。 示例&#xff1a; 給定二叉樹 [3,9,20,null,null,15,7]&#xff0c; 3 / \ 9 20 / \ 15 7 返回它的最大深度…

C++的安全類型轉換的討論

關于強制類型轉換的問題,很多書都討論過,寫的最詳細的是C++ 之父的《C++的設計和演化》。最好的解決方法就是不要使用C風格的強制類型轉換,而是使用標準C++的類型轉換符:static_cast, dynamic_cast。標準C++中有四個類型轉換符:static_cast、dynamic_cast、reinterpret_ca…

PaperNotes(10)-Maximum Entropy Generators for Energy-Based Models

Maximum Entropy Generators for Energy-Based ModelsAbstract1 Introduction2 Background3 Maximum Entropy Generators for Energy-Based Models4 Experiments5 Related Work6 Conclusion7 AcknowledgementsAbstract 由于對數似然梯度的難以計算&#xff0c;能量模型的最大似…

leetcode105 前序中序遍歷序列構造二叉樹

根據一棵樹的前序遍歷與中序遍歷構造二叉樹。 注意: 你可以假設樹中沒有重復的元素。 例如&#xff0c;給出 前序遍歷 preorder [3,9,20,15,7] 中序遍歷 inorder [9,3,15,20,7] 返回如下的二叉樹&#xff1a; 3 / \ 9 20 / \ 15 7 思路&#xff1a; 1、…

c++的虛擬繼承 的一些思考吧

虛擬繼承是多重繼承中特有的概念。虛擬基類是為解決多重繼承而出現的。如:類D繼承自類B1、B2,而類B1、B2都繼承自類A,因此在類D中兩次出現類A中的變量和函數。為了節省內存空間,可以將B1、B2對A的繼承定義為虛擬繼承,而A就成了虛擬基類。實現的代碼如下: class A class …