あなたはGCCに渡すか、Objective Cのか、客観的C++アプリケーションのコンパイルを可能にするために打ち鳴らすためにいくつかのコンパイラスイッチがあります。
gcc -ObjC MySourceFile.m
gcc -ObjC++ MySourceFile.mm
clang -ObjC MySourceFile.m
clang -ObjC++ MySourceFile.mm
あなたはどのMacOSXののどの最小バージョンを指定しますあなたのアプリは次のオプションで実行できます:
gcc -ObjC++ -mmacosx-version-min=10.6
あなたのアプリがSnow Leopardと互換性を持つようにする場合は10.6を指定してください。あなたはまた、彼らはに対してコンパイルするためにSDKのバージョンを知っているようにはgccや打ち鳴らすにSYSROOTオプションを渡す必要があります:
gcc -ObjC++ -mmacosx-version-min=10.6 --sysroot=/Developer/SDKs/MacOSX10.7.sdk
玩具
アーチオプションとして構築するためのアーキテクチャを指定
gcc -ObjC++ -mmacosx-version-min=10.6 --sysroot=/Developer/SDKs/MacOSX10.7.sdk -arch x86_64
リンカーldを別々に呼び出す場合は、sysrootlibオプションをldに渡す必要があります。動的にリンクされたライブラリを作成するには、dylibオプションをldに渡します。 dynamiclibをgccまたはclangに渡すと、これはldに渡されます。
gcc -dynamiclib -ObjC++ -mmacosx-version-min=10.6 --sysroot=/Developer/SDKs/MacOSX10.7.sdk -arch x86_64
あなたはgccとフレームワークの名前に、リンカオプションとして、フレームワークのオプションを渡すココアフレームワークにリンクするには:
gcc -dynamiclib -ObjC++ -mmacosx-version-min=10.6 --sysroot=/Developer/SDKs/MacOSX10.7.sdk -arch x86_64 -Wl,-framework,Cocoa
あなたがC++標準ライブラリを使用している場合は、のようにすることを指定する必要があります
-Wl,stdc++
MacOSXの10.7にデプロイし、libcの++ C++標準ライブラリを使用することができ打ち鳴らすでコンパイルすると、リンカオプション。あなたは、コンパイラへとリンカへのオプション渡し:
-stdlib=libc++ -Wl,c++
だから、Cocoaフレームワークにリンクされているソースからのライブラリーを作製するために、あなたは、GCC
gcc -dynamiclib -ObjC++ -mmacosx-version-min=10.6 --sysroot=/Developer/SDKs/MacOSX10.7.sdk -arch x86_64 -o MyLibrary.dylib -Wl,-framework,Cocoa MySourceFile.mm
希望を使用して、次の操作を行いますこれは役に立ちます。