我正在为Android开发一个包含Java和Native组件的库。 Native库依赖于GNU STL。我正在链接gnustl_static
,但遇到了一些奇怪的问题,这些问题是通过链接gnustl_shared
来解决的。 (例如问题Filesystem and locale)。目前,我已经确定了gnustl_shared
。
这就是问题所在 - 我的图书馆的消费者希望链接到Native .so以添加他们自己的代码。我从阅读中了解到所有的C运行时必须匹配。
gnustl_shared
似乎可能不起作用(就外交和易于整合而言)gnustl_shared
构建,则生成的JAR文件包含libgnustl_shared.so
,这会导致构建APK的问题也依赖于此库。 - 我想我可以不把它包含在JAR文件中?gnustl_static
构建,我是否应该避免所有这些问题?std::string
和std::vector
),如果我的客户不使用GNU STL,我会遇到问题吗?感谢