title: Unable to use std::chrono with std::future - GLIBCXX_3.4.19 not found
body: <p>I'm trying to use <code>std::future::wait_for(std::chrono::duration)</code> in my application (in fact, I don't want to wait at all which makes this more frustrating, as you'll see), but in using anything from <code>std::chrono</code>, I am unable to run the application after cross-compiling it for my BeagleBone Black:</p>
  
  <pre><code>/usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.19' not found
  </code></pre>
  
  <p>Until I add the following lines to my code, this project compiles and runs great with an older version of GLIBCXX, but just to be able to check if a future's value is ready without blocking, I suddenly need all these newer libraries:</p>
  
  <pre><code>if (myFuture.wait_for(std::chrono::seconds(0)) == std::future_status::ready)
      return true;
  </code></pre>
  
  <p>The BeagleBone Black comes with <code>GLIBCXX_3.4.17</code> from GCC 4.6.3 - I've checked the C++ headers on the system, and as I suspected, all the functionality I need from the chrono library is there. So why does it ask for version 3.4.19?</p>
  
  <p>I tried updating and upgrading Debian with <code>sudo apt-get upgrade</code> in the hopes that the newer libraries would be added. This had no effect. Besides, I would <em>really</em> like to be able to run on the stock image.</p>
  
  <p>So I tried statically linking <code>libstdc++</code> with <code>-static-libstdc++</code> added to my LD flags. Now I'm apparently missing <code>GLIBC-2.7</code> which can't be fixed in the same way with <code>-static-libgcc</code></p>
  
  <p>I'm out of ideas.</p>