2011-01-04 4 views
1

私は自分のCライブラリをMacで作って自分のiPhoneプログラムに組み込もうとしています。Macでarmアーキテクチャcライブラリを作成

のmath.h:

int myPow2(int); 

math.c:

#include "math.h" 

int myPow2(int num) { 
    return num*num; 
} 

私はCライブラリファイル(.Aや作り方を検索 Cのコードは次のように、簡単です。 LIB ..etc)他の方法があります(GCCコンパイラを使用する必要があると思われる)ので、私は、このコマンドを使用します?

gcc -c math.c -o math.o 
ar rcs libmath.a math.o 

そして株式会社iPhoneプロジェクトでそれをルーデッド。今はxcodeのiPhoneプロジェクトをビルドするときに問題があります。

は、私はいくつかの pages discuss about the problemを見つけた「ファイルがリンクされるアーキテクチャ されていない、サポートされていないファイル 形式のために建てられた」が、I386/ARMアーキテクチャライブラリーを作製する方法がないディテール。最後にこのコマンドを使用してください:

gcc -arch i386 -c math.c -o math.o 
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/arm-apple-darwin10-gcc-4.2.1 -c math.c -o math.o 

この方法が正しいかどうかわかりません。それとももう一つの方法がありますか?

+1

Xcodeで静的ライブラリプロジェクトテンプレートを使用していない理由は何ですか?それはあなたのための適切なターゲットアーキテクチャを設定する世話をするでしょう。 –

+0

WindowsまたはLinuxを使用してCライブラリを構築する必要があるためです。私はソースコードを取ることができません。私はmath.oまたはlibmath.aファイルしか取れません。そして、もう一つの疑問があるようです。「Windows/Linuxでcライブラリを作ってiPhoneプロジェクトで使う方法は?」 – gamegamelife

答えて

2

何をといいますか。と言っています。

プロジェクトに新しいターゲットを追加します。 XCodeがどのテンプレートを使用するかを尋ねるときは、「静的ライブラリ」を選択します。

ライブラリのファイルをそのターゲットに追加します。静的ライブラリのターゲットを主な実行可能ファイルの依存関係として追加します。主な実行可能ファイルに組み込まれたライブラリを追加します。 Voila!

関連する問題