AllJoynChat示例 - 找不到选项' -L / build / Debug-iphoneos'

时间:2016-04-09 21:32:03

标签: alljoyn

我尝试构建AllJoynChat示例并收到以下错误消息:

ld:警告:找不到选项' -L / build / Debug-iphoneos' ld:找不到-lssl的库 clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

我正在使用Xcode 7.2和iOS 9.2 SDK。有什么帮助吗?

1 个答案:

答案 0 :(得分:0)

看起来您的构建无法找到openssl库。

以下步骤完全如下:

  1. 将AllJoyn SDK包解压缩到开发系统上的文件夹中。

  2. 将OpenSSL源下载并复制到开发系统上的单独文件夹中,而不是AllJoyn SDK下。

  3. 导航到Finder中的OpenSSL源代码顶部文件夹,并将从GitHub下载的openssl.xcodeproj文件夹复制到此文件夹中。

  4. 在Xcode中打开openssl.xcodeproj。

  5. 在Xcode中,为每个构建加密目标(libssl.a和libcrypto.a) 通过选择Product-> Build For->(您想要的配置),您的iOS项目所需的配置(调试|发布)和平台(iphoneos | iphonesimulator)的组合。

  6. 在步骤1中创建的顶级OpenSSL文件夹下创建一个名为“build”的新文件夹。

  7. 在中找到您的OpenSSL构建产品文件夹(即:Debug-iphoneos) / Users // Library / Developer / Xcode / DerivedData / XXXXXXXXXXXXX-openssl / Build / Products文件夹,并将所有 - 文件夹(如Debug-iphoneos)复制到构建 在步骤6中创建的文件夹。

  8. 您现在应该拥有与此类似的包含libssl和libcrypto的文件夹结构 对于您在步骤5中构建的每个$(CONFIGURATION) - $(PLATFORM_NAME):

    的OpenSSL 1.0.1c

        build
              Debug-iphoneos
                    libssl.a
                    libcrypto.a
    
              Debug-iphonesimulator
                    libssl.a
                    libcrypto.a
    
  9. 定义环境变量OPENSSL_ROOT = 每当使用AllJoyn SDK构建项目时,都需要存在此环境变量。

    9a上。对于Mac OS X 10.7到10.9,要设置环境变量,请打开终端窗口并键入     以下内容:

    launchctl setenv OPENSSL_ROOT <path to top level folder containing openssl>
    

    重新启动XCode。

    9b上。在Mac OS X 10.10中,环境变量处理已更改。最重要的是,OPENSSL_ROOT     必须在启动Xcode之前定义(Xcode不会拾取新的或更改的变量     发射后)。因此,要设置环境变量,请打开终端窗口并键入     以下内容:

    launchctl setenv OPENSSL_ROOT <path to top level folder containing openssl>
    sudo killall Finder
    sudo killall Dock
    

    重启XCode。

  10. 如果您已经完成了上述检查步骤9,因为不同版本的OS X的步骤不同,您可能使用的是尚未更新说明的最新版本。