title: smart pointers not working with Android NDK r8
body: <p>I can't figure out how to use shared pointers within my Android project. I'm using the latest Eclipse ADT on Mac OS X with the Android NDK r8d.</p>
  
  <p>Here is what is in my <code>Android.mk</code> file:<br></p>
  
  <pre><code>LOCAL_PATH := $(call my-dir)
  include $(CLEAR_VARS)
  LOCAL_CPPFLAGS  := -std=c++11
  LOCAL_MODULE    := native
  LOCAL_SRC_FILES := native.cpp
  include $(BUILD_SHARED_LIBRARY)
  </code></pre>
  
  <p>Here is what is in my <code>Application.mk</code> file:<br></p>
  
  <pre><code>NDK_TOOLCHAIN_VERSION=4.7
  APP_STL := stlport_shared
  </code></pre>
  
  <p>I've tried the default GCC 4.6, the experimental 4.7, and the clang3.1 toolchains.<br>
  I've tried linking to <code>stlport_shared</code> and <code>gnustl_shared</code> c++ runtime libraries.<br>
  I've tried the <code>FLAGS</code> <code>-std=c++11</code>, <code>-std=c++0x</code>, and the <code>-std=gnu++11</code>.</p>
  
  <p>I'm able to use lambdas and auto of the c++11 standard, so the C++11 flag appears to be working. However anytime I try and use a shared_ptr, weak_ptr, or unique_ptr, I get the error <code>'suchandsuch_ptr' is not a member of 'std'</code><br></p>
  
  <p>I have the <code>#include &lt;memory&gt;</code> in my cpp file. Now Eclipse tells me <code>Unresolved inclusion: &lt;memory&gt;</code>, but I get the same thing for <code>&lt;vector&gt;</code> and <code>&lt;string&gt;</code> and those appear to compile and work just fine.<br></p>
  
  <p>Are smart pointers not implemented in the toolchains included in the Android NDK?<br>
  If not, why not? Since GCC and clang have had support for smart pointers for quite some time, this would mean that I am either missing something, or the Android devs have disabled them for some reason.<br>
  Any clues?</p>