title: cppnet-lib http client works on one system, not another
body: <p>I've been working on some code on a machine running Ubuntu Mint. I'm using the boost::network::http::client to retrieve a web page and work with the data. Everything is fine.</p>
  
  <p>I recently installed Kubuntu on another system. I used apt-get to install lib-boost-all-dev and libcppnetlib-dev.</p>
  
  <p>My program compiles on the Kubuntu machine, but locks forever trying to extract the body(response). Here is an example of what my code is doing:</p>
  
  <pre><code>#include &lt;iostream&gt;
  #include &lt;string&gt;
  
  #include &lt;boost/network/protocol/http/client.hpp&gt;
  #include &lt;boost/network/uri.hpp&gt;
  
  namespace http = boost::network::http;
  namespace uri  = boost::network::uri;
  using namespace std;
  
  int main() {
  
     string url = "http://127.0.0.1";
  
     http::client client;
     http::client::request request(url);
     http::client::response response = client.get(request);
     // Next line stalls forever
     string data = static_cast&lt;std::string&gt;(body(response));
     // Never gets here
     return 0;
  }
  </code></pre>
  
  <p>Again, this sort of thing seems to work fine on my Mint machine, but not on the new machine I just setup. What are some things I should look at or try to resolve this? Thank you.</p>
  
  <p>In case it helps, here's a gdb dump of where it's locking.</p>
  
  <pre><code>gdb) run
  Starting program: /home/bi/Projects/yahtest/prog 
  [Thread debugging using libthread_db enabled]
  Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
  [New Thread 0x7ffff5d01700 (LWP 27239)]
  [New Thread 0x7ffff5500700 (LWP 27240)]
  ^C
  Program received signal SIGINT, Interrupt.
  pthread_cond_wait@@GLIBC_2.3.2 ()
      at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  185     ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: No such file or directory.
  (gdb) bt
  #0  pthread_cond_wait@@GLIBC_2.3.2 ()
      at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
  #1  0x0000000000412bb4 in boost::condition_variable::wait (this=0x6c5b00, 
      m=...) at /usr/include/boost/thread/pthread/condition_variable.hpp:73
  #2  0x0000000000414ea0 in boost::detail::shared_state_base::wait_internal (
      this=0x6c5aa0, lk=..., rethrow=true)
      at /usr/include/boost/thread/future.hpp:327
  #3  0x0000000000414f6d in boost::detail::shared_state_base::wait (
      this=0x6c5aa0, rethrow=true) at /usr/include/boost/thread/future.hpp:346
  #4  0x00000000004303ac in boost::detail::shared_state&lt;std::string&gt;::get_sh (
      this=0x6c5aa0) at /usr/include/boost/thread/future.hpp:672
  #5  0x000000000042c991 in boost::shared_future&lt;std::string&gt;::get (
      this=0x7fffffffd790) at /usr/include/boost/thread/future.hpp:1897
  #6  0x0000000000427a70 in boost::network::http::async_message&lt;boost::network::http::tags::http_async_8bit_udp_resolve&gt;::body (this=0x7fffffffd6d0)
      at /usr/include/boost/network/protocol/http/message/async_message.hpp:121
  #7  0x0000000000420bfd in boost::network::http::impl::body_wrapper&lt;boost::network::http::basic_response&lt;boost::network::http::tags::http_async_8bit_udp_resolve&gt; &gt;::operator std::string (this=0x7fffffffd5b0)
      at /usr/include/boost/network/protocol/http/message/wrappers/body.hpp:29
  #8  0x0000000000410162 in main () at main.cpp:21
  (gdb) 
  </code></pre>