Xcode5:链接 aws4c 库

Posted

技术标签:

【中文标题】Xcode5:链接 aws4c 库【英文标题】:Xcode5: link aws4c library 【发布时间】:2014-03-10 20:47:30 【问题描述】:

我在 Xcode 中有 C++ 项目

我想在其中使用 C 库 aws4c https://code.google.com/p/aws4c/

这是我的 apn.cpp 文件:

#include "aws4c.h"

...

int main(int argc, char *argv[])


     aws_init(); 

     ...

在 Xcode 中看起来不错,但是当我尝试构建时 - 出现错误

Undefined symbols for architecture x86_64:
  "aws_init()", referenced from:
      _main in apn.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

在 Xcode5 中将 C 库链接到 C++ 项目的正确方法是什么?

【问题讨论】:

【参考方案1】:

解决了这个问题

添加

#ifdef __cplusplus
extern "C" 
#endif

#ifdef __cplusplus

#endif

到 aws4c.h 文件,它可以工作

【讨论】:

如果我使用linux呢?我已经试过了,但它仍然给我这个错误 这也适用于 Linux。我为 Linux 编译了我的最终应用程序

以上是关于Xcode5:链接 aws4c 库的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 5 如何从 App Bundle 链接动态库

在 xcode5 中使用 svn

在 xcode5.1 上运行现有项目时出错

为 Xcode5 安装 Eigen3

Xcode 5.1:移除 x86_64 架构

XCode 5 - 无法访问本地 git 存储库