[objective-c]winの下でObjective-c開発環境を構築する


まず、現在windowsの下にはObjective-CのIDEは存在しません.ObjectiveEClipseは選択可能なプラグインで、Eclipse 3を組み合わせています.5+CDT6.0ですが、更新は停止しています.GNUstepはCocoa(アップルOSの開発フレームワーク)のようなAPIとツールを提供し、現在はGNU/Linux and GNU/HURD、Solaris、NetBSD、OpenBSD、FreeBSD、Darwin、Windowsをサポートし、無料で使用されている.このプロジェクトはObjective Cが多くの流行プラットフォームで開発され、実行できるようにした.
Windowsの下でObjective C開発環境を構築するには、GNUstep公式サイトにダウンロードする必要があります.4つのパッケージ:GNUstep MSYS System、GNUstep Core、GNUstep Devel、Cairo Backend.このうち、最初の2つのパッケージはインストールする必要があります.3つ目のパッケージは、gcc、g++などの開発ツールをインストールするので、Objective Cを勉強する場合は、このパッケージもインストールする必要があります.4つ目のパッケージはglibなどのライブラリをインストールします.このパッケージのインストールは具体的な状況によって異なります.インストールパスは中国語では推奨されません.インストール後、環境変数PATHに追加します.C:GNUstepGNUstepSystemTools;C:\GNUstep\bin;C:GNUstepmingwbin、インストール後にGNUstep shellつまりインストールディレクトリの下のmsysを実行する.bat.gccとmakeコマンドをテストします.
テストプログラム
 
#import <Foundation/Foundation.h> int main (int argc, const char *argv[]) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; NSLog(@"Hello World!"); [pool drain]; return 0; }

 
リンクのコンパイル
 
1:直接gccコンパイルリンク方式
  gcc -o test test.m -I/GNUstep/System/Library/Headers -L/GNUstep/System/Library/Libraries -lobjc -lgnustep-base -fconstant-string-class=NSConstantString
次のようになります.
-I/GNUstep/system/Library/Headersコンパイル中にヘッダファイルにディレクトリが含まれていることを示します
-L/GNUstep/system/Library/Libraries接続されているライブラリファイルを示します
-lobjcリンクのプロパティは、表示するリンクlibobjcを必要としません.aライブラリ、gccはこのリンク属性を受け取って私たちのためにこれらのことを完成します.
-fconstant-string-class=NSConstantString定数文字列タイプをNSConstantStringと指定
2:GNUmakefile方式
GNUmakefileを書くと次のようになります.
 
  GNUSTEP_MAKEFILES=/GNUstep/System/Library/Makefiles
  include $(GNUSTEP_MAKEFILES)/common.make
  TOOL_NAME = test
  test_OBJC_FILES = ./main.m
  include $(GNUSTEP_MAKEFILES)/tool.make

注意:TOOL_NAMEはプロジェクト名test,test_として定義されるOBJC_FILES定義コンパイルファイルリスト
GNUmakefileディレクトリでmakeコマンドを実行し、実行可能ファイルを得る.
3:IDEを組み合わせ、CodeBlocksを選択
コンパイラ設定
 
GNUStepインストールのgccを使用して、C:GNUstepbinディレクトリの下にあります.
1)   Settings->Compiler and debugger...
2)GNU GCC Compilerを選択してcopyをクリックし、「GNU GCC Obj-C Compiler」などの名前を変更する
3)GNU GCC CompilerのToolchain executablesパスをC:GNUstepbin、つまりGNUstepのgccが存在するディレクトリに設定します.
4)Compile settings->Other options追加-fconstant-string-class=NSConstantString
5)Linker Settings->Other Link Optionsに-lobjc-lgnustep-baseオプションを追加します.
問題が発生した場合は、-lobjc-lgnustep-baseオプションを削除して、Linker Settings->Link librariesに追加する方法を選択します.
  C:/GNUstep/GNUstep/System/Library/Libraries/libobjc.dll.a  
  C:/GNUstep/GNUstep/System/Library/Libraries/libgnustep-base.dll.a
6)Search directories->Complier追加ヘッダディレクトリ:C:GNUstepGNUstepSystemLibraryHeaders
 
ソースファイルフォーマットのサポートの追加
1) Environment...,選択
Files extension handling追加
*.mと
*.mm
2)
Project->Project tree, file types & categories...にある
ソースに*を追加します.mと*.mm
 
ハイライト1)
Settings->Editor->
Syntax highlighting
2)Filemasksを選択…、*を追加します.mと*.mm
3)Keywordsを選択...リストボックスにKeywordsを追加
Keywords:
@interface @implementation @end @class @selector @protocol @public @protected @private id BOOL YES NO SEL nil NULL self

コンパイル可能リンク1)に設定.mファイル右クリック->Properties
2)buildを選択し、Compile fileとLink fileを選択する
3)Generalを選択し、File is read-onlyの選択を解除する
4)注意,.hファイルはCompile fileとLink fileを設定しない