Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1728007
  • 博文数量: 347
  • 博客积分: 9328
  • 博客等级: 中将
  • 技术积分: 2680
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-29 23:45
文章分类

全部博文(347)

文章存档

2016年(1)

2013年(4)

2012年(207)

2011年(85)

2010年(50)

分类: LINUX

2012-12-07 19:58:41

在 NDK r5 的 sources/cxx-stl/gnu-libstdc++/README 文件里,写着:

  1. To use it, define APP_STL to 'gnustl_static' in your Application.mk.  
  2. See docs/CPLUSPLUS-SUPPORT.html for more details.  
  3. This implementation fully supports C++ exceptions and RTTI.  

也就是说,如果我们在 Application.mk 文件里面加上:

APP_STL := gnustl_static

就可以用 GNU libstdc++ 了,这个版本是支持 C++ exception 和 RTTI 的。(我顺便试了一下 NDK r5 里的 stlport,不支持 RTTI,使用 typeid 会报错)

注:Android Build System 总是会带上 -fno-rtti 的编译选项,但是如果你指定了 APP_STL 为 gnustl_static 的话,它会自动在后面再给你加一个 -frtti,这样 g++ 会以最后一个 flag 为准,所以就启用 RTTI 了。

阅读(1515) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~