我使用来自C++11的特性,比如std::function,在为Cordova构建iOS插件时遇到了问题。错误,如:
error: no type named 'function' in namespace 'std'看起来编译器没有c++11的标志,但是我不知道如何告诉Cordova这个标志。
出于某种原因,直接提供标志:
<source-file src="src/ios/Example.cpp" compiler-flags="-std=c++11" />不工作并产生相同的错误。
发布于 2017-01-23 18:29:20
我来得太晚了,但我目前正在开发一个插件,并面临着同样的问题。
它是hack-y的,绝对不是真实的,但在某种程度上,一个实用的解决方案是直接更改xcode中的方言和库标志。请注意,这也可能会扰乱您可能拥有的其他插件。
打开工作区(例如,位于platforms/ios/HelloCordova/HelloCordova.xcworkspace),然后在build settings菜单中:
C++ Language Dialect选项设置为C++11值。C++ Standard Library选项设置为lib++值。https://stackoverflow.com/questions/30280020
复制相似问题