UPX能够打包Dylibs吗?

时间:2015-04-06 15:39:43

标签: objective-c cocoa dylib

是UPX能够打包Dylibs吗?它适用于Mac Os X应用程序可执行文件,但我不能使它打包dylib它会抛出UnknownExecutableFormatException异常。不过我可以在upx源代码的mach-o部分看到很多对dylib的引用。任何提示?非常感谢。

1 个答案:

答案 0 :(得分:2)

如果dylib包含UPX或加载命令(例如init),则可能在LC_ROUTINES的旧版本上。由于尝试打包dylib的其他无法预料的问题,开发人员稍后撤回了这个版本。所以要回答你的问题,是的,这是可能的,但仅限于某些情况,并建议

Changes in 3.05 (27 Apr 2010):
  ...
  * Withdraw support for shared libraries on Darwin (Apple Mac OS X)
    because upx does not understand enough about .dylib.
  ..

Changes in 3.04 (27 Sep 2009):
  ...
  * new formats Dylib/i386 and Dylib/ppc32 support shared libraries
    [such as browser plugins] on Darwin (Apple Macintosh).  An existing
    -init function (LC_ROUTINES command) is required.
  ...