如何从apple的源代码编译和使用objc运行时?

时间:2015-04-01 05:28:00

标签: ios objective-c xcode compiler-errors clang

众所周知,objc的运行时是开源的,可以从以下网址下载:http://www.opensource.apple.com/tarballs/objc4/

我下载tarball之后提取它。我使用xcode打开objc.xcodeproj。但是,当我构建它时,有许多错误,例如,找不到一些标题。我搜索了所有丢失的标题,下载它们,将它们放入/tmp/objc.dst/usr/include。但没有运气,仍然是错误。

我搜索了互联网,但我找不到有关的文件或说明:

  1. 如何从源代码编译apple的objc运行时?
  2. 编译之后,我应该得到libobjc.A.dylib,如何使用它(作为系统的libobjc.A.dylib的替换)?
  3. 我非常感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:3)

在10.10.2(14C1514),Xcode 6.2(6C131e)下编译没有错误。

  1. 您需要OSX 10.8 SDK,您可以从早期Xcode安装dmg或此存储库https://github.com/phracker/MacOSX-SDKs获取(如果您从此repo下载sdk,则可能需要使用此脚本修复软链接{ {3}},您可能需要为引用的递归运行脚本两次)

  2. 更多10.8 sdk到/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs

  3. 克隆此存储库http://blog.jeswang.org/blog/2014/10/26/fix-slash-soft-slash-links-slash-in-slash-an-slash-archived-slash-file/

  4. 编译并运行debug-objc scheme

  5. 您可以在源代码中设置任何断点并调试整个运行时。

相关问题