Discussion:
Convey C++ STL library for Android?
Jeffrey Walton
2016-07-12 00:06:59 UTC
Permalink
Hi Everyone,

We caught a bug report for a bad header check. Our project is a C++
library, and the report is at
http://github.com/weidai11/cryptopp/issues/222. The project is not
Autools-based, but we try to support endeavors like this.

The issue appears to be Android lacks a default STL library, so its
not sufficient to perform 'AC_CHECK_HEADERS(cryptopp/cryptlib.h)'.
Instead, Autotools needs to know which STL library to use, and then it
needs to use the selected STL library in its check. As far as I know,
that means select either (header paths, libs):

* GNU STL
* <android ndk ...>/cxx-stl/gnu-libstdc++/4.9/include
* <android ndk
...>/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a/include (for bitops.h,
IIRC)
* libgnustl_shared.so

* STLport
* <android ndk ...>/cxx-stl/stlport/stlport/
* libstlport_shared.so

My question is, how should an STL library be specified for Android
when using Autotools?

Jeff

Loading...