【问题标题】:LC_DATA_IN_CODE in IOS binaryIOS 二进制文件中的 LC_DATA_IN_CODE
【发布时间】:2012-10-04 18:37:09
【问题描述】:

我有一个 IPA 文件,其主二进制文件包含 0x29 加载命令,该命令在旧版本的 loader.h 中指定为“LC_DATA_IN_CODE”。

但是,当我尝试对文件执行任何操作(包括使用 otool 或 codesign)时,我会收到有关“未知加载命令”的错误消息。

我将与给我 IPA 文件的人交谈,但在此之前我想了解此命令的一些历史记录。它是否不再受支持,如果是,它离开了哪个版本?或者它是否被重新添加到最新版本的操作系统中?删除它会伤害什么吗?

谢谢。

【问题讨论】:

  • 我尝试删除此命令,但现在出现错误,提示符号表不合适。

标签: ios binary legacy mach-o


【解决方案1】:

您收到这些消息的原因是您的 otool 版本已过时。 Apple 的大多数工具都在他们不知道的加载命令上中断,并且 DATA_IN_CODE(实际上并不那么旧)已在最近的二进制文件中使用。出于同样的原因,您也可能在使用 LC_SOURCE_VERSION 或 LC_MAIN 的 OS X 二进制文件上失败。 Mountain Lion 的 otool 可能会更好,或者您可以使用 jtool。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-17
    • 2016-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多