Stdexcept en Android

Estoy intentando compilar SoundTouch en Android. Empecé con esta línea de configuración:

./configure CPPFLAGS = "- I / Volúmenes / android-build / mydroid / desarrollo / ndk / build / plataformas / android-3 / arch-brazo / usr / include /" LDFLAGS = "- Wl, -rpath-link = Volúmenes / android-build / mydroid / desarrollo / ndk / build / plataformas / android-3 / arcos-brazo / usr / lib -L / Volúmenes / android-build / mydroid / desarrollo / ndk / build / Ar-brazo / usr / lib -nostdlib -lc "–host = brazo-eabi –enable-shared = yes CFLAGS =" – nostdlib -O3 -mandroid "host_alias = arm-eabi –no-create –no- Recursión

Debido a que el Android NDK apunta a ARM, también tuve que cambiar el Makefile para eliminar los indicadores -msse2 para progresar.

Cuando corro 'make', obtengo:

/bin/sh ../../libtool --tag=CXX --mode=compile arm-eabi-g++ -DHAVE_CONFIG_H -I. -I../../include -I../../include -I/Volumes/android-build/mydroid/development/ndk/build/platforms/android-3/arch-arm/usr/include/ -O3 -fcheck-new -I../../include -g -O2 -MT FIRFilter.lo -MD -MP -MF .deps/FIRFilter.Tpo -c -o FIRFilter.lo FIRFilter.cpp libtool: compile: arm-eabi-g++ -DHAVE_CONFIG_H -I. -I../../include -I../../include -I/Volumes/android-build/mydroid/development/ndk/build/platforms/android-3/arch-arm/usr/include/ -O3 -fcheck-new -I../../include -g -O2 -MT FIRFilter.lo -MD -MP -MF .deps/FIRFilter.Tpo -c FIRFilter.cpp -o FIRFilter.o FIRFilter.cpp:46:21: error: stdexcept: No such file or directory FIRFilter.cpp: In member function 'virtual void soundtouch::FIRFilter::setCoefficients(const soundtouch::SAMPLETYPE*, uint, uint)': FIRFilter.cpp:177: error: 'runtime_error' is not a member of 'std' FIRFilter.cpp: In static member function 'static void* soundtouch::FIRFilter::operator new(size_t)': FIRFilter.cpp:225: error: 'runtime_error' is not a member of 'std' make[2]: *** [FIRFilter.lo] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all-recursive] Error 1 

Esto no es muy sorprendente, ya que se requiere la bandera -nostdlib. Android parece no tener stdexcept ni stdlib. ¿Cómo puedo superar este bloque de compilación de SoundTouch?

En una suposición, puede haber alguna bandera que no sé acerca de que debo usar. Podría refactorizar el código para no usar stdexcept. Puede haber una forma de extraer la fuente stdexcept original y hacer referencia a ella. Podría ser capaz de vincular a una biblioteca precompilada stdexcept.

La versión predeterminada de gcc proporcionada con el android ndk no admite excepciones. Ver http://www.crystax.net/android/ndk.php para una construcción alternativa que hace.

  • Código de la versión de incremento automático en la aplicación para Android
  • Hormiga reconstruyendo proyectos de biblioteca cada vez
  • android.net.SntpClient falta en Android SDK
  • ¿Por qué el SDK de Android necesita un JDK?
  • Qt - Compilation for Linux no es compilación para Android? ¿Por qué?
  • Cómo acelerar el mm en la fabricación de módulos de AOSP
  • Creación de una versión demo y una aplicación de versión completa basada en un código base / proyecto
  • ¿Por qué R no existe error viene en android?
  • Compilar el proyecto de Android en el sistema de integración continua Hudson?
  • JIT vs AOT Compilación
  • ¿Cómo puedo compilar un programa C existente para Android usando NDK?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.