title: Android NDK - Use of APP_STL in Application.mk
body: <p>I have the latest android ndk installed.  I am using Eclipse along with Sequoyah.</p>
  
  <p>I am trying to use various things that should be found in stlport or gnustl libraries, but I keep getting errors that they cannot be found.</p>
  
  <p>In JNI/Application.mk I only have</p>
  
  <pre><code>APP_STL := stlport_shared
  </code></pre>
  
  <p>I have tried stlport_static and the gnustl_static/shared and all get the same result.</p>
  
  <p>In my Android.mk I have</p>
  
  <pre><code>LIB_TEST_DIR := $(call my-dir)
  
  include $(CLEAR_VARS)
  
  LOCAL_PATH := $(LIB_TEST_DIR)
  
  LOCAL_MODULE := testmod
  
  LOCAL_MODULE_FILENAME := libtestmod
  
  LOCAL_CPP_EXTENSION := .cxx .cpp .cc
  
  LOCAL_C_INCLUDES := $(LOCAL_PATH)/libtest2/
  
  LOCAL_CFLAGS := -DHAVE_CONFIG_H
  
  LOCAL_SRC_FILES := test.cc
  
  include $(BUILD_SHARED_LIBRARY)
  </code></pre>
  
  <p>In a header file that test.cc includes, I have</p>
  
  <pre><code>#include &lt;cassert&gt;
  #include &lt;algorithm&gt;
  #include &lt;iosfwd&gt;
  </code></pre>
  
  <p>But, when I build, it cannot find any of these.  Any idea what I am doing wrong?  </p>
  
  <p>When I do a clean, I see this:</p>
  
  <pre><code>Clean: addiJNI [armeabi]
  Clean: stlport_shared [armeabi]
  Clean: stlport_static [armeabi]
  </code></pre>
  
  <p>So, it seems like it knew I wanted stlport.  Similar thing happens if I use the gnu libs instead.  But when I build even the simplest example, I get something like...</p>
  
  <pre><code>jni/test.cpp:4:19: error: cassert: No such file or directory
  jni/test.cpp:6:21: error: algorithm: No such file or directory
  jni/test.cpp:7:18: error: iosfwd: No such file or directory
  make: *** [obj/local/armeabi/objs/addiJNI/addiJNI.o] Error 1
  </code></pre>