Hon*_*aek 7 c++ android android-ndk
未定义引用'webrtc :: CreateSessionDescription(std :: __ ndk1 :: basic_string,std :: __ ndk1 :: allocator> const&,std :: __ ndk1 :: basic_string,std :: __ ndk1 :: allocator> const&,webrtc :: SdpParseError*)"
更新android ndk修订版11后,我遇到了一些问题.由于上面的原因,我无法建立我的项目.
在Android Developer中,我发现'将libc ++的内联命名空间改为std :: __ ndk1,以防止平台libc ++的ODR问题.',但我无法理解.
我该如何解决?
谢谢你的帮助.
小智 0
我认为我的方法或多或少有些棘手,但它确实有效。我进入/ndk-root-path//sources/cxx-stl/llvm-libc++/libcxx/include,有一个名为“__config”的文件。打开它并找出所有带有“_LIBCPP_BEGIN_NAMESPACE_STD”的行,这是添加内联命名空间“__ndk1”的地方。所以我只是注释掉所有内联名称空间,例如:
352 #define _LIBCPP_BEGIN_NAMESPACE_STD namespace std {//inline namespace _LIBCPP_NAMESPACE {
353 #define _LIBCPP_END_NAMESPACE_STD } //}
354 #define _VSTD std//::_LIBCPP_NAMESPACE
356 namespace std {
// inline namespace _LIBCPP_NAMESPACE {
// }
}
Run Code Online (Sandbox Code Playgroud)
这些代码应该有 4 或 5 段。评论后,您可以重建您的 ndk 项目,它应该可以工作。
| 归档时间: |
|
| 查看次数: |
2357 次 |
| 最近记录: |