【发布时间】:2014-09-16 21:44:51
【问题描述】:
当我尝试在 Embarcadero 的 Firemonkey 创建的 dylib 上运行 codesign 时,我收到一条错误消息:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate: 文件不是可以处理的顺序(本地重定位条目 不合适):/Users/jwwalker/Documents/libV35SS.dylib
可能与这个问题有关:Reliable Deployment of Delphi-Generated Dylib on OSX
但是,我尝试重新排序加载命令以使 LC_ID_DYLIB 排在第一位,这显然是该问题的解决方案,但没有帮助。有没有其他方法可以对文件进行二进制编辑来修复它?关于本地重定位条目的“正确”位置的任何线索?
使用来自Mach-o File Format Reference 的信息,我组合了一个工具(至少在我相当小且简单的dylib 的情况下)重新排列dylib 中的数据以使其适合codesign。我发布了my code as open source。
【问题讨论】:
标签: macos delphi code-signing firemonkey dylib