【问题标题】:No OpenSSL Support Error When Compiling编译时没有 OpenSSL 支持错误
【发布时间】:2015-09-30 20:52:08
【问题描述】:

随着最近在 Xcode 7 中删除 OpenSSL,我发现自己不得不为使用它的旧程序手动构建库。我有一个据称构建库的 Xcode 项目(成功创建了 libcrypto.a 和 libssl.a),但是在编译旧程序时,出现错误:

“不支持 OpenSSL 线程”

这是由引发错误的预处理器检查引起的:

...

    #define OPENSSL_THREAD_DEFINES
    #include <openssl/opensslconf.h>

    #ifndef OPENSSL_THREADS
    #error no OpenSSL thread support
    #endif

...

正在找到 opensslconf.h 文件,但显然没有定义 OPENSSL_THREADS。这应该包含在该文件的某处吗?是我在构建 OpenSSL 库时出现某种配置错误吗?

非常感谢您对此的任何帮助。提前谢谢!

【问题讨论】:

  • 2011 年,Apple 已经有好几年没有提供 OpenSSL。有关更多信息,请参阅此 SO Answer。基本上它被删除了,因为这些版本在向后兼容性方面存在许多问题,并且在开发人员更新时会导致编译错误。
  • 它已被弃用,但在最近的 Xcode 7 版本之前仍受支持。无论如何,这并不能帮助我解决我的问题。
  • 看看OpenSSL的CocoaPods。

标签: xcode multithreading compiler-errors openssl static-libraries


【解决方案1】:

在分别为 OpenSSL 和 Curl 配置构建时可以使用的选项之一中找到答案:

./Configure darwin64-x86_64-cc

./configure --with-darwinssl

【讨论】:

    猜你喜欢
    • 2012-01-05
    • 2012-04-19
    • 2012-10-06
    • 1970-01-01
    • 2012-06-15
    • 2016-12-28
    • 1970-01-01
    • 1970-01-01
    • 2014-02-07
    相关资源
    最近更新 更多