ObjectieGitFramework.xcodeproj 파일을 열면 iOS 체계를 성공적으로 빌드 할 수 있습니다. 그러나 많은 실험이 필요했습니다. 처음부터 시작하자. 내가 어떻게했는지.iOS 앱에 ObjectiveGit 라이브러리 포함
내가 무슨 짓을 :
우선 내가 ObjectiveGit의 포크를 복제.
git clone [email protected]: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
프로젝트를 열고 건물은 이제 하나의 오류 및 하나의 경고가 발생합니다. Xcode에서 자동으로 프로젝트 설정을 업데이트하여 경고를 해결하도록했습니다.
는 지금은 libgit2
디렉토리로 이동 cmake를 사용하여 구축 :
$ 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 오류가 발생합니다.
```
동적 라이브러리 자체가 포함 된 정적 라이브러리는 어떻습니까? dylib (libgit2)를 정적'ObjectiveGit'에 포함시킬 수 있다면 그렇게 할 수 없습니까? –
libgit2.dylib를 장치에서 사용할 수 없으므로 아무 것도 변경되지 않습니다. libgit2를 정적으로 컴파일하면 어떨까요? –
나는 지금 매우 바보 같다. 왜 내가 그렇게하지 않았는지 모르겠다. 지금은 해봤지만 제대로 작동하는 것처럼 보입니다. 그러나 libz에서 mach-o 오류가 발생했기 때문에이를 확실히 처리 할 수 없습니다. –