Incluye la biblioteca Crypto ++ en Android Project a través de NDK

Estoy tratando de incluir Crypto ++ (http://www.cryptopp.com/) en un proyecto Android NDK. Quiero ser capaz de llamar funciones de miembro de Crypto ++ desde la parte de C ++ de mi código. Pensé que podría incluir los encabezados y la fuente de Crypto ++ en mi código C + +, pero no puedo parecen conseguir que funcione.

Mi archivo C ++ se ve así:

#include <jni.h> #include "cryptopp/modes.h" #include "cryptopp/aes.h" using namespace CryptoPP; ... 

con todos los encabezados Crypto ++ y archivos de origen en el subdirectorio cryptopp.

Inicialmente recibí muchos errores de compilación ya que las bibliotecas estándar de C ++ no estaban siendo encontradas, pero lo arreglé agregando Application.mk con la siguiente línea:

 APP_STL := stlport_static 

La compilación con ndk-build (las versiones estándar y crystax) me da el siguiente error:

 ABI='armeabi' ABI='armeabi-v7a' ABI='x86' Gdbserver : [arm-linux-androideabi-4.4.3] libs/armeabi/gdbserver Gdbsetup : libs/armeabi/gdb.setup Compile++ thumb : ndk-tests-cpp <= ndk-tests.cpp In file included from jni/cryptopp/modes.h:7, from jni/ndk-tests.cpp:2: jni/cryptopp/cryptlib.h: In static member function 'static void CryptoPP::NameValuePairs::ThrowIfTypeMismatch(const char*, const std::type_info&, const std::type_info&)': jni/cryptopp/cryptlib.h:291: error: exception handling disabled, use -fexceptions to enable make: *** [obj/local/armeabi/objs-debug/ndk-tests-cpp/ndk-tests.o] Error 1 

Nunca he incluido una biblioteca externa en un proyecto de NDK antes – tal vez sólo estoy viendo algo básico.

    Tienes que habilitar excepciones para tu proyecto de Android. Trate de incluir estas líneas en su Applications.mk:

     APP_CPPFLAGS += -frtti APP_CPPFLAGS += -fexceptions 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.