孔雀开发小屋

专注并致力于手机客户端开发
<2011年5月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

统计

  • 随笔 - 103
  • 文章 - 0
  • 评论 - 251
  • 引用 - 0

常用链接

留言簿(38)

随笔分类

随笔档案

关注的博客

朋友的博客

搜索

  •  

最新评论

阅读排行榜

评论排行榜

Android NDK支持STL的一些注意事项
Android NDK从r5b版本开始有官方支持的STL了,有一个crystax版本早已经支持。官方的支持有两个版本一个是gnu的,一个是stlport。如果你需要在你的NDK程序中使用STL,那么需要在Application.mk文件中添加一个选项,就是APP_STL := stlport_static。 其中APP_STL的取值有以下四种:
    system --> 系统默认的最小支持的C++运行时库
    stlport_static --> 以静态链接的方式使用stlport版本的STL
    stlport_shared --> 以动态链接的方式使用stlport版本的STL
    gnustl_static  --> 以静态链接的方式使用gnu版本的STL

如果你和我一样并没有使用Android.mk和Application.mk,而是使用Code::Blocks或者Visual studio 2010,那么在配置环境时,如果需要STL的支持,那么就需要注意自己要指定stl的包含路径。链接就根据需要自己链接不同的版本。请注意,stlport有静态链接和动态链接两种方式,而gnu的仅有静态链接方法。

另外一个需要注意的就是官方提供的这个stlport版本不支持RTTI和异常,换言之,如果你使用了stlport版本的STL,则不能使用-fexceptions和-frtti这两个编译选项。

posted on 2011-06-29 22:37 孔雀 阅读(12341) 评论(2)  编辑 收藏 引用 所属分类: Android

评论

# re: Android NDK支持STL的一些注意事项 2011-11-25 19:50 amy

请问大牛,gun支持wstring吗?要支持RTTI只能选择gun了。。。
  回复  更多评论    

# re: Android NDK支持STL的一些注意事项 2011-12-05 13:21 kongque

@amy
不要在android ndk中使用wstring。至少在ndk1.6中还是不支持的。

不知道现在情况怎样,我已经有近半年多的时间没有接触ndk了,不了解现在具体的情况。

关于ndk支持stl的部分,在ndk的文档里面可以找到相关内容。
  回复  更多评论    

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理