title: Android NDK - armeabi vs armeabi-v7a folder
body: <p>There are some questions like mine.</p>
  
  <p><a href="https://stackoverflow.com/questions/27852977/why-i-need-put-so-files-in-both-armeabi-v7a-and-armeabi-folders">why I need put *.so files in both armeabi-v7a and armeabi folders?</a></p>
  
  <p><a href="https://stackoverflow.com/questions/17771100/why-armeabi-v7a-conflicts-with-armeabi-of-another-module">Why armeabi-v7a conflicts with armeabi of another module?</a></p>
  
  <p><a href="https://stackoverflow.com/questions/7080525/why-use-armeabi-v7a-code-over-armeabi-code">Why use armeabi-v7a code over armeabi code?</a></p>
  
  <p>But I am not clear yet. I have many .so files for armeabi and armeabi-v7a.</p>
  
  <p>// binaries</p>
  
  <pre><code>armeabi/libarmeabi-v7a-module1.so
  armeabi/libarmeabi-v7a-module2.so
  </code></pre>
  
  <p>// Application.mk file</p>
  
  <pre><code>APP_ABI := armeabi
  APP_PLATFORM := android-19
  APP_STL := gnustl_shared
  </code></pre>
  
  <p>// Android.mk file</p>
  
  <pre><code>include $(CLEAR_VARS)
  LOCAL_MODULE := module1
  LOCAL_SRC_FILES := $(LOCAL_PATH)/armeabi/libarmeabi-v7a-module1.so
  include $(PREBUILT_SHARED_LIBRARY)
  
  include $(CLEAR_VARS)
  LOCAL_MODULE := module2
  LOCAL_SRC_FILES := $(LOCAL_PATH)/armeabi/libarmeabi-v7a-module2.so
  include $(PREBUILT_SHARED_LIBRARY)
  </code></pre>
  
  <p>This settings work fine on armeabi-v7a devices.
  But my app crashes when I set armeabi-v7a abi in Application.mk file. Crash message is below:</p>
  
  <blockquote>
    <p>A/libc:
    /Volumes/Android/buildbot/src/android/ndk-release-r16/external/libcxx/../../external/libcxxabi/src/abort_message.cpp:73:
    abort_message: assertion "Pure virtual function called!" failed</p>
  </blockquote>