我正在尝试构建iOS AllJoyn项目,但我遇到了OpenSSL集成的问题。
我一直按照指示一直到Xcode IDE Build,但现在我收到一条错误消息:“找不到lcrypto的库”。
在线查看看起来可能与Makefile有关,但我不确定lcrypto是什么以及我应该引用哪个库。
修改
我注意到它说它是Shell Script Invocation Error
此处还有跟踪:
ld: warning: directory not found for option '-L/PATH/alljoyn/alljoyn/common/crypto/openssl/build/Debug-iphoneos'
ld: library not found for -lcrypto
clang: error: linker command failed with exit code 1 (use -v to see invocation)
scons: *** [build/darwin/arm/iphoneos/debug/obj/test/bbcclient] Error 1
scons: building terminated because of errors.
Command /usr/local/bin/scons failed with exit code 2
答案 0 :(得分:3)
为了成功使用AllJoyn SDK,您需要有一个openssl库的编译版本(即libcrypto.a)。
构建openssl库的细节可以在SDK中/ alljoyn_objc下的README-INSTALLING.txt文件中找到,我已经复制了下面的相关说明。一旦创建了openssl库,就需要将它放在项目可访问的目录中(在你的情况下" / PATH / alljoyn / alljoyn / common / crypto / openssl / build / Debug-iphoneos")。
大部分信息都包含在AllJoyn Programming Guide for Objective-C
中README-INSTALLING.txt文件中的相关文本:
- iOS开发需要OpenSSL,可从以下网站获得 地址:www.openssl.org AllJoyn已经过OpenSSL 1.0.1版的测试。
- 从GitHub下载可用于构建OpenSSL for iOS的Xcode项目, 在以下网址:https://github.com/sqlcipher/openssl-xcode/
醇>安装
将OpenSSL源复制到开发系统上的单独文件夹中,而不是 在AllJoyn SDK下。
导航到Finder中的OpenSSL源代码顶部文件夹,然后复制openssl.xcodeproj 您从GitHub下载到此文件夹中的文件夹。
在Xcode中打开openssl.xcodeproj。
- 醇>
在Xcode中,为每个构建加密目标(libssl.a和libcrypto.a) 您的配置(调试|发布)和平台(iphoneos | iphonesimulator)的组合 选择Product-> Build For->(您想要的配置),需要您的iOS项目。