构建Gstreamer iOS Tutorial项目时链接器错误

时间:2013-07-18 12:28:28

标签: iphone ios objective-c xcode gstreamer

我从their site下载并安装了Gstreamer iOS库。我将教程复制到我自己的文件夹,并尝试在Xcode中构建项目。我收到以下链接器错误。

我没有找到关于此的线索。 Gstreamer.framework与所有目标相关联。

Undefined symbols for architecture armv7:
  "_iconv_open", referenced from:
      __nl_find_msg in GStreamer(libintl_a_armv7_-dcigettext.o)
     (maybe you meant: _g_iconv_open)
  "_iconv", referenced from:
      __nl_find_msg in GStreamer(libintl_a_armv7_-dcigettext.o)
     (maybe you meant: _iconv_canonicalize, _g_iconv_close , _g_convert_with_iconv , _g_iconv , _g_iconv_open )
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我在这里错过了什么?


框架没有问题。我只需要在Build Phases中添加libiconv.dylib - >链接二进制文件库。之后没有链接器错误!

3 个答案:

答案 0 :(得分:13)

发现它!!!

框架没有问题。我只需要在Build Phases中添加 libiconv.dylib - >链接二进制文件库。之后没有链接器错误!

答案 1 :(得分:0)

您需要做的是将库项目拖到项目中。然后在项目设置中,转到Build Phases并在Target Dependencies下添加库项目作为依赖项。然后在Link Binary With Libraries下(仍然在Build Phases中)添加库的产品(.a文件)。然后重建。

在Xcode的最新版本中,您甚至不需要将其添加为目标依赖项。它会自动检测同一工作区中项目之间的依赖关系。您只需要在Link Binary With Libraries下添加.a文件。

答案 2 :(得分:0)

更新:

我们发现另一位开发人员遇到了同样的问题并提供了修改过的教程来解决overlay.h缺失和其他一些问题,如果您有兴趣请查看: some hook