我正在尝试编译Ghostscript (版本。9-22)用于iOS 11,以替换为iOS 9及更早版本构建的32位库的旧版本。按照找到here的说明,我更改了最后一步,以便提供一个arm64动态库:
ar -crs libgs_arm64_release.a obj/*.o但是,如果我执行以下操作:
lipo -info libgs_arm64_release.a 它告诉我:
input file libgs_arm64_release.a is not a fat file
Non-fat file: libgs_arm64_release.a is architecture: x86_64认为我使用了错误的工具,我也尝试使用XCode工具链per:How to check if a static library is built for 64-bit?中的lipo,但得到的结果是相同的,即它认为它是一个x86_64。
有没有想过在为arm64架构编译时,我错过了什么步骤?
发布于 2017-12-20 05:12:22
为了得到一个arm64动态库,我修改了最后一步:
ar -crs libgs_arm64_release.a obj/*.o
ar只是一个归档工具,它从编译后的目标文件构建一个库。如果你想要一个ARM库,你必须在编译步骤中通过像-arch armv7这样的开关来指定它。
您确定您使用了正确的Makefile吗?该项目似乎有一个模拟器(这是x86)和实际设备(ARM)。
https://stackoverflow.com/questions/47892542
复制相似问题