2016-05-17 12 views
0

私のプロジェクトはObjective-Cで開発されました。私はサードパーティのフレームワークを使用しています(私はそれをthirdpartyと名づけています。残念ながら、サードパーティの名前はわかりません)。OCMock静的ライブラリを使用したiOSユニットテスト(-ObjCフラグの問題)

私のプロジェクトの単体テストコードを記述したいと思います。私はOCMock static library &を使用しました。instructionに従って、この静的ライブラリをiOSプロジェクトに設定しました。彼らの指示に見られるように、ビルド設定 - >その他のリンカフラグ-ObjCリンカフラグを追加するように求められます。

しかし、私は私のプロジェクトをビルドするとき、私は次のエラー取得:私はビルド設定から追加-ObjCリンカフラグを削除する場合は、

ld: warning: Auto-Linking supplied '../thirdparty.framework/thirdparty', 
missing required architecture i386 in file ../thirdparty.framework/thirdparty (2 slices) 

をしかし - >その他のリンカフラグ、上記のエラーが消えます(私のユニットテストを実行すると、OCMockライブラリは-ObjCリンカフラグを追加するようにエラーを投げます)

答えて

1

エラーに関して、私はあなたの3番目のlibsは何もしないと仮定しますi386アーキテクチャをサポートします。私はあなたがSimulatorで走っているときにその問題を経験したと思います。あなたのライブラリが対象となるアーキテクチャをサポートしているかどうか再度確認する必要があります。ここで

xcrun -sdk iphoneos lipo -info $(FILENAME) 

をチェックするスクリプトは結果がこの

enter image description here

のように表示されているので、私は問題がある限り、それはi386のアーキテクチャをサポートしてOCMock静的libにから来ないかもしれないと思います。あなたは設定やその他のlibsも再確認してください。

+0

私の3番目のlibがi386のアーキテクトをサポートしていない場合、この3番目のlibにサポートを追加できない場合は、この問題を修正するためにできることはあまりありません。 –

+0

私が知る限り、3番目のライブラリのオリジナルのプロジェクトを持っていて自分自身でビルドしたり、3番目のチームからのサポートを求めない限り、これ以上のことはできませんでした。 – HDT

関連する問題