为iOS 11编译Ghostscript

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为iOS 11编译Ghostscript相关的知识,希望对你有一定的参考价值。

我正在尝试为ios 11编译Ghostscript(版本9-22),以替换为iOS 9及之前构建的旧版32位版本的库。按照这里的说明:http://www.labs.saachitech.com/2014/03/16/ghostscript-ios-static-library,我改变了最后一步,以便给我一个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工具链中的lipo:How to check if a static library is built for 64-bit?,但得到了相同的结果,认为它是x86_64。

关于为arm64架构编译我缺少哪些步骤的想法?

答案

我改变了最后一步,以便给我一个arm64动态库:

ar -crs libgs_arm64_release.a obj/*.o

ar只是存档工具,它从编译的目标文件构建库。如果你想要一个ARM库,你必须通过像-arch armv7这样的开关在编译步骤中指定它。

你确定你使用了正确的Makefile吗?这些项目似乎有一个模拟器(x86)和实际设备(ARM)。

以上是关于为iOS 11编译Ghostscript的主要内容,如果未能解决你的问题,请参考以下文章

iOS代码片段CodeSnippets

从哪里获得线程安全的 Ghostscript 编译?

Ghostscript:裁剪特定区域?

无法使用 ImageMagick 和 GhostScript 将 PDF 转换为 JPG

错误记录Android Studio 编译报错 ( Could not determine java version from ‘11.0.8‘. | Android Studio 降级 )(代码片段

错误记录Android Studio 编译报错 ( Could not determine java version from ‘11.0.8‘. | Android Studio 降级 )(代码片段