【问题标题】:ios7 with zxing, probably c++ compiler errorios7 with zxing,可能是c++编译错误
【发布时间】:2013-12-06 12:45:31
【问题描述】:

我通过zxing自述文件,我搜索了类似的问题,因为我知道这是常见的错误。但我仍然有问题。我收到如下错误:

架构 i386 的未定义符号:
“std::string::compare(std::string const&) const”,引用自:...

我已将 c++ 语言方言和 c++ 标准库更改为编译器默认值。但是我将 c/c++/o-c 的编译器设置为 Apple LLVM 5.0。

如果我需要提供任何屏幕截图或其他内容,请告诉我。

【问题讨论】:

  • 引用来自您的代码还是来自库中的某些内容?如果它是一个库,您是构建它还是作为二进制文件提供?您使用的是哪个 Xcode 版本?
  • 它以二进制 xcode 5 的形式提供。来自库的引用。

标签: iphone ios7 zxing


【解决方案1】:

听起来好像您的库是使用 libstdc++ 作为 C++ 标准库构建的。尝试在您的项目中更改为该设置而不是 libc++,清理并重建。

或者(对于您项目的未来而言,这是一个更好的选择),看看是否有使用 libc++ 构建的库版本。

【讨论】:

  • 在哪里可以更改?因为我查看了构建设置并且没有选项可以更改它。
  • 我使用的是 Xcode 5.0.2,并且在 Apple LLVM 5.0 - 语言 - C++ 下的构建设置中,C++ 标准库设置显示了 3 个选项:libstdc++、libc++ 和编译器默认值。
【解决方案2】:

随着 iOS 7 的发布,Apple 加入了通过其AV Foundation framework 检测条形码的功能。支持的类型有:

UPC-A、UPC-E、Code 39、Aztec、PDF417、QRCode 以及可能还有 3 或 4 个......所以不再需要使用 ZXing。

【讨论】:

  • 这实际上很高兴知道 :D 很长时间我没有在 iOS 上做点什么,但也许是时候了 :p
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多