title: android.mk arm-linux-androideabi-g++ exceptions and __cxa_allocate_exception
body: <p>I am rebuilding Android from source (to flash onto a device, right now using emulator), trying to add a single command line tool. I've put my source in repo/exernal/... and written <code>Android.mk</code>.</p>
  
  <p>I get the following undefines:</p>
  
  <pre><code>__cxa_allocate_exception
  __cxa_begin_catch
  __cxa_end_catch
  __cxa_end_cleanup
  __cxa_free_exception
  __cxa_get_exception_ptr
  __cxa_rethrow
  __cxa_throw
  __gxx_personality_v0
  </code></pre>
  
  <p>I've searched through the other issues here with the same undefines, but can't quite seem to find the solution for Android.</p>
  
  <p>The final link command gets generated as: </p>
  
  <pre><code>prebuilt/darwin-x86/toolchain/arm-linux-androideabi-4.4.x/bin/arm-linux-androideabi-g++ -nostdlib -Bdynamic -Wl,-T,build/core/armelf.x -Wl,-dynamic-linker,/system/bin/linker -Wl,--gc-sections -Wl,-z,nocopyreloc -o out/target/product/generic/obj/EXECUTABLES/wavsender_intermediates/LINKED/wavsender -Lout/target/product/generic/obj/lib -Wl,-rpath-link=out/target/product/generic/obj/lib -lc -llog -lcutils -lnetutils -lc -lstdc++ -lm  out/target/product/generic/obj/lib/crtbegin_dynamic.o    out/target/product/generic/obj/EXECUTABLES/wavsender_intermediates/ohSongcast/WavSender/WavSender.o              out/target/product/generic/obj/STATIC_LIBRARIES/liblog_intermediates/liblog.a out/target/product/generic/obj/STATIC_LIBRARIES/libcutils_intermediates/libcutils.a out/target/product/generic/obj/STATIC_LIBRARIES/libopenhome_intermediates/libopenhome.a out/target/product/generic/obj/STATIC_LIBRARIES/libgtest_intermediates/libgtest.a out/target/product/generic/obj/STATIC_LIBRARIES/libstlport_static_intermediates/libstlport_static.a out/target/product/generic/obj/STATIC_LIBRARIES/libstdc++_intermediates/libstdc++.a out/target/product/generic/obj/STATIC_LIBRARIES/libgabi++_intermediates/libgabi++.a   -Wl,-z,noexecstack -Wl,--icf=safe -Wl,--fix-cortex-a8 prebuilt/darwin-x86/toolchain/arm-linux-androideabi-4.4.x/bin/../lib/gcc/arm-linux-androideabi/4.4.3/armv7-a/libgcc.a out/target/product/generic/obj/lib/crtend_android.o
  </code></pre>
  
  <p>Android.mk is:</p>
  
  <pre><code>include $(CLEAR_VARS)
  LOCAL_MODULE := wavsender
  LOCAL_MODULE_TAGS := eng
  LOCAL_CFLAGS += -fexceptions -D_GNU_SOURCE -DPLATFORM_ANDROID
  LOCAL_SRC_FILES += WavSender.cpp
  LOCAL_SHARED_LIBRARIES := libc libcutils libnetutils
  LOCAL_STATIC_LIBRARIES := libcutils libopenhome
  LOCAL_STATIC_LIBRARIES += libopenhome libgtest libstlport_static libstdc++ libgabi++
  LOCAL_LDLIBS += -lstdc++
  include external/stlport/libstlport.mk
  include $(BUILD_EXECUTABLE)
  </code></pre>
  
  <p>Can anyone see a problem or point me in a direction to get the correct behavior from arm-linux-androideabi-g++ ?</p>