如何将OpenSSL的libcrypto.a链接到XCode中的Firebreath插件

时间:2014-09-15 04:10:56

标签: xcode cmake static-linking firebreath

我是新手。我在shell中编译了OpenSSL的libcrypto.a,但无法将其链接到我的Firebreath插件。 我添加了CMakeLists.txt:

target_link_libraries(${CURPROJECT} /path/to/libcrypto.a)

但是CMake给出了错误:

无法为目标指定链接库 “/path/to/libcrypto.a”,不是由这个项目构建的

我正在使用MacOSX 10.9,XCode 5.1.1,FireBreath 1.7,OpenSSL 1.0.1i。

请向我解释,如何将libcrypto.a链接到我的插件?

2 个答案:

答案 0 :(得分:2)

您是否已经测试了此处描述的“实验性”内置openssl支持:

Firebreath libraries

答案 1 :(得分:2)

您收到的错误消息表示它认为您正在尝试为您尝试添加的项目/path/to/libcrypto.a而非添加链接库链接库/path/to/libcrypto.a到项目$(CURPROJECT)

这可能是因为您需要${CURPROJECT}(cmake变量使用{}而不是())。也可能是变量CURPROJECT未被定义。

您的命令是正确的,但是您传入的参数不是。您也可以考虑使用find_library来查找libcrypto.a。

当然,对于Mac OS,您应该已经有openssl可用,因此您不需要指定路径。另外,正如@hasa所提到的,你最好只使用firebreath openssl的东西,这是实验性的,但实际上只是在Windows上 - mac OS它只是使用现有的。它只是标记为实验性的,因为我不愿意为Windows二进制文件提供支持。