1

ObjectieGitFramework.xcodeprojファイルを開くと、iOSスキームを正常に構築できるようになりました。しかし、たくさんの実験が必要でした。最初から始めましょう–私がそれをどのようにしたか。

私がしたこと:

まず、ObjectiveGitのフォークのクローンを作成しました。

git clone git@github.com:Eonil/objective-git.git --recurse-submodules
cd objective-git
cd ./Scripts/libgit2-make-ios/; sh ./download-make-clean-deploy.sh "./../../libgit2.a"; cd ../..

Src:https ://github.com/libgit2/objective-git/pull/54

プロジェクトを開いてビルドすると、1つのエラーと1つの警告が発生します。警告を解決するために、Xcodeにプロジェクト設定を自動的に更新させました。 エラー

今、私はディレクトリに行き、cmakelibgit2を使用してビルドします:

$ mkdir build && cd build
$ cmake ..
$ cmake --build .

Src:https ://github.com/libgit2/libgit2

この結果は、とりわけ、libgit2.0.15.0.dylib作成中のファイルになります。 ファインダー内のファイルの画像

それをXcodeにドラッグし、ObjectiveGitとiOSターゲットに追加します。次に、ObjectiveGit-iOSの[ビルドフェーズ]タブに移動して、次のようにします。

ここに画像の説明を入力してください

問題

この時点で、プロジェクトをビルドでき、を使用してプロジェクト内にクラスを正常に作成できましたObjectiveGit。ただし、プロジェクトを別のプロジェクト内にドラッグしObjectiveGit-iOS、ターゲット依存関係として追加libObjectiveGit-iOS.aして追加すると、link binary with librariesインポートできずObjectiveGit/ObjectiveGit.h、他の奇妙なエラーが発生していました(下の画像を参照)。xcodeのライブラリについてはほとんど知らないので、なぜこれが機能しないのかまったくわかりません。

ここに画像の説明を入力してください ここに画像の説明を入力してください

さて、これは私が一度受けたエラーですが、もうありません。私はそれを引き起こすために何をしていたのか分かりません。 ここに画像の説明を入力してください

アップデート

 $(SRCROOT)/frameworks/ObjectiveGit/Classes
 $(SRCROOT)/frameworks/ObjectiveGit/libgit2/include
 $(SRCROOT)/frameworks/ObjectiveGit/Classes/Categories

header search pathこれを何かに追加すると、奇妙なことが起こります。その結果、ファイルは見つかりませんが、代わりに70の他のMach-oエラーが発生します。

`` `

4

1 に答える 1

1

ダイナミックライブラリはiOSではサポートされていません。静的ライブラリを使用する必要があります。

明確にするために:もちろんiOSはダイナミックライブラリをサポートしていますが、アップルによって配布されているものだけです。

于 2012-04-23T13:50:06.500 に答える