1

我正在尝试将objective-git库用于我正在开发的ios应用程序。我能够让库在模拟器中编译、链接和运行得很好。但是,当我尝试在实际的 iPad 上运行应用程序时,出现以下错误:

Undefined symbols for architecture armv7s:
  "_libiconv", referenced from:
      _git_path_iconv in libObjectiveGit-iOS.a(path.c.o)
  "_libiconv_close", referenced from:
      _git_path_iconv_clear in libObjectiveGit-iOS.a(path.c.o)
  "_libiconv_open", referenced from:
      _git_path_iconv_init_precompose in libObjectiveGit-iOS.a(path.c.o)
ld: symbol(s) not found for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我相信问题是我正在用不同版本的 iconv 编译 libgit2 库,然后是 ios 中包含的那个。但是,我弄乱了构建脚本,试图强制它与 ios 版本链接,但错误仍然存​​在。我应该如何正确链接 iconv 库,以便我可以在实际设备上运行应用程序?

4

1 回答 1

1

您需要添加libiconv.tbd到构建阶段中的“将二进制文件与库链接”部分。

注意:我知道ObjectiveGit解决了这个问题,但也许这对那些试图在他们的项目中使用 iconv 的人有所帮助。

于 2016-03-01T16:29:41.127 回答