2

我正在尝试将 OmniGroup 的框架合并到一个项目中。我对构建这些依赖项非常陌生,所以我一直在摸索。到目前为止我所做的。

  1. 使用 Single View Application 模板为 iOS (iPad) 创建了新的 Xcode 项目。
  2. 编辑了 Schema 并取消选中 Parallelize Build and Find Implicit Dependencies。
  3. 将 OmniGroup 存储库中的“配置”目录添加到我的项目中。
  4. 在我的项目存储库中创建了一个lib目录。
  5. 将目录复制OmniBase到我的lib目录。
  6. 在 Xcode 中创建了一个 Omni Frameworks 组。
  7. 将文件拖到lib/OmniBase/OmniBase.xcodeprojOmni Frameworks 组。
  8. 在我的项目的 Build Phases 选项卡中,我在 Link Binary With Libraries 部分添加了“libOmniBase.a”。
  9. ⌘B 构建

是的,我知道 OmniBase 本身毫无用处。我只是想先建立最低数量并从那里添加。但我无法构建 OmniBase。我得到一个错误...

ld /Users/mluton/Library/Developer/Xcode/DerivedData/CoreTextWithOmni2-dzbwnmvzfbuyhzadnmwrvmfmzyoa/Build/Products/Debug-iphoneos/CoreTextWithOmni2.app/CoreTextWithOmni2 normal armv7 cd /Users/mluton/dev/ios-recipes/CoreTextWithOmni2 setenv IPHONEOS_DEPLOYMENT_TARGET 6.1 setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr /sbin:/sbin" /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/开发者/SDKs/iPhoneOS6.1。sdk -L/Users/mluton/Library/Developer/Xcode/DerivedData/CoreTextWithOmni2-dzbwnmvzfbuyhzadnmwrvmfmzyoa/Build/Products/Debug-iphoneos -F/Users/mluton/Library/Developer/Xcode/DerivedData/CoreTextWithOmni2-dzbwnmvzfbuyhzadnmwrvmfmzyoa/Build/Products/ Debug-iphoneos -filelist /Users/mluton/Library/Developer/Xcode/DerivedData/CoreTextWithOmni2-dzbwnmvzfbuyhzadnmwrvmfmzyoa/Build/Intermediates/CoreTextWithOmni2.build/Debug-iphoneos/CoreTextWithOmni2.build/Objects-normal/armv7/CoreTextWithOmni2.LinkFileList -dead_strip - fobjc-arc-fobjc-link-runtime-miphoneos-version-min=6。1 /Users/mluton/Library/Developer/Xcode/DerivedData/CoreTextWithOmni2-dzbwnmvzfbuyhzadnmwrvmfmzyoa/Build/Products/Debug-iphoneos/OmniBase/OmniBase -framework UIKit -framework Foundation -framework CoreGraphics -o /Users/mluton/Library/Developer/Xcode /DerivedData/CoreTextWithOmni2-dzbwnmvzfbuyhzadnmwrvmfmzyoa/Build/Products/Debug-iphoneos/CoreTextWithOmni2.app/CoreTextWithOmni2

clang:错误:没有这样的文件或目录:'/Users/mluton/Library/Developer/Xcode/DerivedData/CoreTextWithOmni2-dzbwnmvzfbuyhzadnmwrvmfmzyoa/Build/Products/Debug-iphoneos/OmniBase/OmniBase'

我尝试将我的项目与 TextEdit 示例工作区进行比较,但我还没有遇到任何解决方案。我知道我可能缺少一些步骤或设置。希望这对阅读本文的人来说是显而易见的。

4

1 回答 1

2

在检查了一些之后,我终于得到了它。这是涉及的其他步骤。

  • Script目录从 OmniGroup 存储库复制到我的项目。
  • 添加了构建阶段。运行外壳脚本Scripts/CopyLibraryResources。将我的构建阶段与 TextEdit 示例中的相同。Target Dependencies、Compile Sources、Link Binary with Libraries、Copy Bundle Resources 和 Copy Library Resources,这是我在上一步中添加的 shell 脚本构建阶段。
  • 将我的项目转换为工作区。
  • 将我的原始项目和 FixStringsFile 项目添加到工作区。
  • 编辑方案。在构建下添加FixStringsFile为依赖项。确保它位于列表的顶部。添加任何其他库(在本例中为 OmniBaseTouch)作为构建依赖项。将它们放在 FixStringsFile 之后和应用程序目标之前。
  • ⌘B 构建。没有问题!

PS:在这两个项目中,我都编辑Configurations/Target-Mac-Common.xcconfig并注释掉了,OMNI_MAC_CODE_SIGN_IDENTITY = Mac Developer:因为我不在 Mac Developer 程序中。

于 2013-06-11T20:30:10.163 回答