如何在支持Openssl的iOS上构建PoDoFo?

如何在支持Openssl的iOS上构建PoDoFo?,ios,iphone,openssl,podofo,Ios,Iphone,Openssl,Podofo,我有一个使用PoDoFo对PDF进行数字签名的项目,所以我尝试将它集成到一个同时使用PoDoFo和OpenSSL库的项目中。但当我尝试构建它时,我在链接方面遇到了问题: 如果我尝试在设备上运行,则在未找到架构armv7的ld:symbols时会重复相同的错误 我仔细检查了每件事: 1. header search paths 2. library search paths 3. Buildphases->compile sources for any missing .m files

我有一个使用PoDoFo对PDF进行数字签名的项目,所以我尝试将它集成到一个同时使用PoDoFo和OpenSSL库的项目中。但当我尝试构建它时,我在链接方面遇到了问题:

如果我尝试在设备上运行,则在未找到架构armv7的ld:symbols时会重复相同的错误

我仔细检查了每件事:

 1. header search paths
 2. library search paths
 3. Buildphases->compile sources for any missing .m files
标题搜索路径 库搜索路径 Buildphases->编译任何缺少的.m文件的源代码 但我还是有同样的问题

我如何解决这个问题

我仔细检查了每件事:

 1. header search paths
 2. library search paths
 3. Buildphases->compile sources for any missing .m files
看起来您没有包括库,只是提供了库搜索路径

这是一个典型的图书馆对我来说的样子。它适用于OpenSSL,但同样适用于PoDoFo。在下面的示例中,为iOS构建的OpenSSL位于/usr/local/ssl/iOS中。标头位于/usr/local/ssl/ios/include/openssl中,库位于/usr/local/ssl/ios/lib中

路径:

图书馆:

如果添加库后仍然存在链接器错误,请执行以下操作以确保库具有所需的体系结构。我以OpenSSL为例,您应该使用PoDoFo库的名称

xcrun -sdk iphoneos lipo -info libcrypto.a
您应该看到如下内容:

Architectures in the fat file: libcrypto.a are: armv7 armv7s arm64 i386

如果您需要为iOS构建OpenSSL,请尝试以下GitHub:。这是一个庞大的库,包含了iOS可能需要的所有架构。

感谢您的清晰解释。我已经验证了您指定的内容,但我仍然收到相同的问题。这是我正在研究的库,如果您可以查看一下并指出问题所在,那就好了。不幸的是,我的机器上没有这些库。因此,我会得到一系列不同的错误。这些库实际上嵌入在示例项目本身中。我认为您不会发现任何与缺少库相关的错误。请小心使用CTOpenSSLWrapper的OpenSSL版本。其OpenSSL 1.0.1c于2012年5月10日发布。1.0.1h是最新版本,它修复了一些严重的漏洞。此外,fat库缺少ARM64。