title: undefined reference to boost::program_options in vowpalwabbit compilation, ubuntu 16.04
body: <p>I am trying to install <a href="https://github.com/JohnLangford/vowpal_wabbit" rel="nofollow noreferrer">vowpal_wabbit</a> in ubuntu 16.04.
  <br>Error :</p>
  <pre><code>./libvw.a(search.o): In function `Search::setup(vw&amp;)':
  search.cc:(.text+0xa5f8): undefined reference to `boost::program_options::options_description::options_description(std::string const&amp;, unsigned int, unsigned int)'
  search.cc:(.text+0xaafe): undefined reference to `boost::program_options::abstract_variables_map::operator[](std::string const&amp;) const'
  search.cc:(.text+0xac0e): undefined reference to `boost::program_options::abstract_variables_map::operator[](std::string const&amp;) const'
  search.cc:(.text+0xad20): undefined reference to `boost::program_options::abstract_variables_map::operator[](std::string const&amp;) const'
  search.cc:(.text+0xadda): undefined reference to `boost::program_options::abstract_variables_map::operator[](std::string const&amp;) const'
  search.cc:(.text+0xae94): undefined reference to `boost::program_options::abstract_variables_map::operator[](std::string const&amp;) const'
  ./libvw.a(search.o):search.cc:(.text+0xafaa): more undefined references to `boost::program_options::abstract_variables_map::operator[](std::string const&amp;) const' follow
  ./libvw.a(search_meta.o): In function `SelectiveBranchingMT::initialize(Search::search&amp;, unsigned long&amp;, boost::program_options::variables_map&amp;)':
  search_meta.cc:(.text+0x7645): undefined reference to `boost::program_options::options_description::options_description(std::string const&amp;, unsigned int, unsigned int)'
  ./libvw.a(search_sequencetask.o): In function `SequenceSpanTask::initialize(Search::search&amp;, unsigned long&amp;, boost::program_options::variables_map&amp;)':
  search_sequencetask.cc:(.text+0x14ab): undefined reference to `boost::program_options::options_description::options_description(std::string const&amp;, unsigned int, unsigned int)'
  ./libvw.a(search_sequencetask.o): In function `ArgmaxTask::initialize(Search::search&amp;, unsigned long&amp;, boost::program_options::variables_map&amp;)':
  search_sequencetask.cc:(.text+0x2a02): undefined reference to `boost::program_options::options_description::options_description(std::string const&amp;, unsigned int, unsigned int)'
  ./libvw.a(search_dep_parser.o): In function `DepParserTask::initialize(Search::search&amp;, unsigned long&amp;, boost::program_options::variables_map&amp;)':
  search_dep_parser.cc:(.text+0x4328): undefined reference to `boost::program_options::options_description::options_description(std::string const&amp;, unsigned int, unsigned int)'
  ./libvw.a(search_dep_parser.o): In function `void Search::check_option&lt;unsigned int&gt;(unsigned int&amp;, vw&amp;, boost::program_options::variables_map&amp;, char const*, bool, bool (*)(unsigned int, unsigned int), char const*, char const*)':
  search_dep_parser.cc:(.text._ZN6Search12check_optionIjEEvRT_R2vwRN5boost15program_options13variables_mapEPKcbPFbS1_S1_ESA_SA_[_ZN6Search12check_optionIjEEvRT_R2vwRN5boost15program_options13variables_mapEPKcbPFbS1_S1_ESA_SA_]+0x1ea): undefined reference to `boost::program_options::abstract_variables_map::operator[](std::string const&amp;) const'
  ./libvw.a(search_entityrelationtask.o): In function `EntityRelationTask::initialize(Search::search&amp;, unsigned long&amp;, boost::program_options::variables_map&amp;)':
  search_entityrelationtask.cc:(.text+0x33f7): undefined reference to `boost::program_options::options_description::options_description(std::string const&amp;, unsigned int, unsigned int)'
  ./libvw.a(search_graph.o): In function `GraphTask::initialize(Search::search&amp;, unsigned long&amp;, boost::program_options::variables_map&amp;)':
  search_graph.cc:(.text+0x17aa): undefined reference to `boost::program_options::options_description::options_description(std::string const&amp;, unsigned int, unsigned int)'
  search_graph.cc:(.text+0x196c): undefined reference to `boost::program_options::abstract_variables_map::operator[](std::string const&amp;) const'
  ./libvw.a(scorer.o): In function `scorer_setup(vw&amp;)':
  scorer.cc:(.text+0x1cd): undefined reference to `boost::program_options::options_description::options_description(std::string const&amp;, unsigned int, unsigned int)'
  scorer.cc:(.text+0x271): undefined reference to `boost::program_options::abstract_variables_map::operator[](std::string const&amp;) const'
  collect2: error: ld returned 1 exit status
  Makefile:46: recipe for target 'vw' failed
  make[1]: *** [vw] Error 1
  make[1]: Leaving directory '/home/kapil/Projects/MachineLearning/vowpal_wabbit/vowpalwabbit'
  Makefile:97: recipe for target 'vw' failed
  make: *** [vw] Error 2
  </code></pre>
  <p>I am following the instructions provided in the repository. I have installed <code>libboost-program-options-dev</code>, <code>zlib1g-dev</code> &amp; <code>libboost-python-dev</code>. I tried to first run just <code>make</code>, which gives undefined reference error. Then I tried using <code>autogen.sh</code> script before <code>make</code>, but that leads to same error too. I also tried, unsuccessfully, using commands like <code>make BOOST_FLAGS=-lboost-program-options</code> &amp; <code>make BOOST_FLAGS=-lboost_options</code>. I tried using <code>clang++</code> but that gives same output. I have checked for both <code>boost</code> &amp; <code>boost_program-options</code> &amp; they are present and are the latest version. How do I remove the error?</p>
  <p>The problem is that, although I can install vowpalwabbit using ppa in ubuntu, when I try installing it for python using pip, it gives the same reference error. I need to install the python version.</p>