3

I am trying to compile sssp in PowerGraph toolkit which is available here: https://github.com/jegonzal/PowerGraph. As suggested, I ran:

$ ./configure --no_tcmalloc
$ cd release/toolkits/graph_analytics
$ make sssp

The configure step succeeded, and all the dependencies got built successfully. However, the last build step (i.e., linking) failed giving a huge error log (shortened version shown below):

[ 10%] Built target zookeeper
[ 18%] Built target libbz2
[ 29%] Built target boost
[ 40%] Built target libevent
[ 97%] Built target graphlab
Linking CXX executable sssp
CMakeFiles/sssp.dir/sssp.cpp.o: In function `boost::program_options::typed_value<bool, char>::xparse(boost::any&, std::vector<std::string, std::allocator<std::string> > const&) const':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/value_semantic.hpp:170: undefined reference to `boost::program_options::validate(boost::any&, std::vector<std::string, std::allocator<std::string> > const&, bool*, int)'
CMakeFiles/sssp.dir/sssp.cpp.o: In function `boost::program_options::typed_value<std::string, char>::xparse(boost::any&, std::vector<std::string, std::allocator<std::string> > const&) const':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/value_semantic.hpp:170: undefined reference to `boost::program_options::validate(boost::any&, std::vector<std::string, std::allocator<std::string> > const&, std::string*, int)'
CMakeFiles/sssp.dir/sssp.cpp.o: In function `boost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t, std::string const&, std::string const&, int)':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/errors.hpp:372: undefined reference to `boost::program_options::validation_error::get_template(boost::program_options::validation_error::kind_t)'
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/errors.hpp:372: undefined reference to `boost::program_options::error_with_option_name::error_with_option_name(std::string const&, std::string const&, std::string const&, int)'
CMakeFiles/sssp.dir/sssp.cpp.o: In function `boost::program_options::typed_value<unsigned long, char>::name() const':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/value_semantic.hpp:19: undefined reference to `boost::program_options::arg'
CMakeFiles/sssp.dir/sssp.cpp.o: In function `boost::program_options::typed_value<bool, char>::name() const':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/value_semantic.hpp:19: undefined reference to `boost::program_options::arg'
CMakeFiles/sssp.dir/sssp.cpp.o: In function `boost::program_options::typed_value<std::vector<unsigned int, std::allocator<unsigned int> >, char>::name() const':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/value_semantic.hpp:19: undefined reference to `boost::program_options::arg'
CMakeFiles/sssp.dir/sssp.cpp.o: In function `boost::program_options::typed_value<std::string, char>::name() const':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/value_semantic.hpp:19: undefined reference to `boost::program_options::arg'

I checked to see whether boost libraries were compiled successfully or not, and I found them present at deps/local/lib/:

libboost_context.a     libboost_iostreams.a        libboost_system.a  libevent_core.a   libevent_extra.la    libevent_pthreads.la  libzookeeper_mt.a   libzookeeper_st.la
libboost_date_time.a   libboost_program_options.a  libbz2.a           libevent_core.la  libevent.la          libhdfs.a             libzookeeper_mt.la  pkgconfig
libboost_filesystem.a  libboost_random.a           libevent.a         libevent_extra.a  libevent_pthreads.a  libhdfs.la            libzookeeper_st.a

So, as the next step, I tried to manually compile sssp. I ran the following command which explicitly specifies the location using -L switch:

$ mpic++ -O3 -pthread /home/margot/share/PowerGraph-master/toolkits/graph_analytics/sssp.cpp -I /home/margot/share/PowerGraph-master/src/ -L /home/margot/share/PowerGraph-master/deps/local/lib/ -L /home/margot/share/PowerGraph-master/release/src/graphlab/ -lzookeeper_mt -lzookeeper_st -lboost_context -lz -levent -levent_pthreads -lboost_filesystem -lboost_program_options -lboost_system -lboost_iostreams -lboost_date_time -lhdfs -lgraphlab -o sssp.bin 

However, I again received a linker error (full version shown below):

/tmp/ccokDGNL.o: In function `void graphlab::command_line_options::attach_option<std::vector<unsigned int, std::allocator<unsigned int> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<unsigned int, std::allocator<unsigned int> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
sssp.cpp:(.text._ZN8graphlab20command_line_options13attach_optionISt6vectorIjSaIjEEEEvRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERT_SC_[_ZN8graphlab20command_line_options13attach_optionISt6vectorIjSaIjEEEEvRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERT_SC_]+0x17d): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > boost::lexical_cast<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<unsigned int, std::allocator<unsigned int> > >(std::vector<unsigned int, std::allocator<unsigned int> > const&)'
/tmp/ccokDGNL.o: In function `graphlab::synchronous_engine<sssp>::resize()':
sssp.cpp:(.text._ZN8graphlab18synchronous_engineI4ssspE6resizeEv[_ZN8graphlab18synchronous_engineI4ssspE6resizeEv]+0x22): undefined reference to `graphlab::memory_info::log_usage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
sssp.cpp:(.text._ZN8graphlab18synchronous_engineI4ssspE6resizeEv[_ZN8graphlab18synchronous_engineI4ssspE6resizeEv]+0x25f): undefined reference to `graphlab::memory_info::log_usage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/ccokDGNL.o: In function `graphlab::distributed_ingress_base<vertex_data, edge_data>::finalize()':
sssp.cpp:(.text._ZN8graphlab24distributed_ingress_baseI11vertex_data9edge_dataE8finalizeEv[_ZN8graphlab24distributed_ingress_baseI11vertex_data9edge_dataE8finalizeEv]+0x263): undefined reference to `graphlab::memory_info::log_usage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
sssp.cpp:(.text._ZN8graphlab24distributed_ingress_baseI11vertex_data9edge_dataE8finalizeEv[_ZN8graphlab24distributed_ingress_baseI11vertex_data9edge_dataE8finalizeEv]+0x11bb): undefined reference to `graphlab::memory_info::log_usage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
sssp.cpp:(.text._ZN8graphlab24distributed_ingress_baseI11vertex_data9edge_dataE8finalizeEv[_ZN8graphlab24distributed_ingress_baseI11vertex_data9edge_dataE8finalizeEv]+0x1859): undefined reference to `graphlab::memory_info::log_usage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/ccokDGNL.o:sssp.cpp:(.text._ZN8graphlab24distributed_ingress_baseI11vertex_data9edge_dataE8finalizeEv[_ZN8graphlab24distributed_ingress_baseI11vertex_data9edge_dataE8finalizeEv]+0x1f3c): more undefined references to `graphlab::memory_info::log_usage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' follow
/tmp/ccokDGNL.o: In function `graphlab::synchronous_engine<sssp>::synchronous_engine(graphlab::distributed_control&, graphlab::distributed_graph<vertex_data, edge_data>&, graphlab::graphlab_options const&)':
sssp.cpp:(.text._ZN8graphlab18synchronous_engineI4ssspEC2ERNS_19distributed_controlERNS_17distributed_graphI11vertex_data9edge_dataEERKNS_16graphlab_optionsE[_ZN8graphlab18synchronous_engineI4ssspEC5ERNS_19distributed_controlERNS_17distributed_graphI11vertex_data9edge_dataEERKNS_16graphlab_optionsE]+0x1804): undefined reference to `graphlab::distributed_event_logger::create_log_entry(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, graphlab::log_type::log_type_enum)'
sssp.cpp:(.text._ZN8graphlab18synchronous_engineI4ssspEC2ERNS_19distributed_controlERNS_17distributed_graphI11vertex_data9edge_dataEERKNS_16graphlab_optionsE[_ZN8graphlab18synchronous_engineI4ssspEC5ERNS_19distributed_controlERNS_17distributed_graphI11vertex_data9edge_dataEERKNS_16graphlab_optionsE]+0x1885): undefined reference to `graphlab::distributed_event_logger::create_log_entry(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, graphlab::log_type::log_type_enum)'
sssp.cpp:(.text._ZN8graphlab18synchronous_engineI4ssspEC2ERNS_19distributed_controlERNS_17distributed_graphI11vertex_data9edge_dataEERKNS_16graphlab_optionsE[_ZN8graphlab18synchronous_engineI4ssspEC5ERNS_19distributed_controlERNS_17distributed_graphI11vertex_data9edge_dataEERKNS_16graphlab_optionsE]+0x1906): undefined reference to `graphlab::distributed_event_logger::create_log_entry(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, graphlab::log_type::log_type_enum)'
sssp.cpp:(.text._ZN8graphlab18synchronous_engineI4ssspEC2ERNS_19distributed_controlERNS_17distributed_graphI11vertex_data9edge_dataEERKNS_16graphlab_optionsE[_ZN8graphlab18synchronous_engineI4ssspEC5ERNS_19distributed_controlERNS_17distributed_graphI11vertex_data9edge_dataEERKNS_16graphlab_optionsE]+0x197a): undefined reference to `graphlab::distributed_event_logger::create_log_entry(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, graphlab::log_type::log_type_enum)'
/tmp/ccokDGNL.o: In function `main':
sssp.cpp:(.text.startup+0x77b): undefined reference to `graphlab::command_line_options::add_positional(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
sssp.cpp:(.text.startup+0x92c): undefined reference to `graphlab::command_line_options::add_positional(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/ccokDGNL.o: In function `graphlab::distributed_graph<vertex_data, edge_data>::load_direct_from_posixfs(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::function<bool (graphlab::distributed_graph<vertex_data, edge_data>*, std::istream&)>)':
sssp.cpp:(.text._ZN8graphlab17distributed_graphI11vertex_data9edge_dataE24load_direct_from_posixfsENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN5boost8functionIFbPS3_RSiEEE[_ZN8graphlab17distributed_graphI11vertex_data9edge_dataE24load_direct_from_posixfsENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN5boost8functionIFbPS3_RSiEEE]+0x1c7): undefined reference to `graphlab::fs_util::list_files_with_prefix(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)'
/tmp/ccokDGNL.o: In function `graphlab::distributed_graph<vertex_data, edge_data>::load_from_posixfs(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::function<bool (graphlab::distributed_graph<vertex_data, edge_data>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>)':
sssp.cpp:(.text._ZN8graphlab17distributed_graphI11vertex_data9edge_dataE17load_from_posixfsENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN5boost8functionIFbRS3_RKS9_SE_EEE[_ZN8graphlab17distributed_graphI11vertex_data9edge_dataE17load_from_posixfsENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN5boost8functionIFbRS3_RKS9_SE_EEE]+0x1c1): undefined reference to `graphlab::fs_util::list_files_with_prefix(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(fiber_control.cpp.o): In function `graphlab::fiber_control::yield_to(graphlab::fiber_control::fiber*)':
/home/margot/share/PowerGraph-master/src/graphlab/parallel/fiber_control.cpp:345: undefined reference to `jump_fcontext'
/home/margot/share/PowerGraph-master/src/graphlab/parallel/fiber_control.cpp:367: undefined reference to `jump_fcontext'
/home/margot/share/PowerGraph-master/src/graphlab/parallel/fiber_control.cpp:349: undefined reference to `jump_fcontext'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(fiber_control.cpp.o): In function `graphlab::fiber_control::launch(boost::function<void ()>, unsigned long, graphlab::fixed_dense_bitset<64>)':
/home/margot/share/PowerGraph-master/src/graphlab/parallel/fiber_control.cpp:297: undefined reference to `make_fcontext'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(server_list.cpp.o): In function `graphlab::zookeeper::server_list::get_all_servers(std::string)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/server_list.cpp:73: undefined reference to `zoo_get_children'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(server_list.cpp.o): In function `graphlab::zookeeper::server_list::server_list(std::vector<std::string, std::allocator<std::string> >, std::string, std::string)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/server_list.cpp:45: undefined reference to `zookeeper_init'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(server_list.cpp.o): In function `graphlab::zookeeper::server_list::~server_list()':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/server_list.cpp:56: undefined reference to `zookeeper_close'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(server_list.cpp.o): In function `graphlab::zookeeper::server_list::watch_changes(std::string)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/server_list.cpp:125: undefined reference to `zoo_get_children'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(server_list.cpp.o): In function `graphlab::zookeeper::server_list::issue_callback(std::string)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/server_list.cpp:163: undefined reference to `zoo_get_children'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(server_list.cpp.o): In function `graphlab::zookeeper::server_list::watcher(_zhandle*, int, int, char const*, void*)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/server_list.cpp:182: undefined reference to `ZOO_CHILD_EVENT'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(dc_tcp_comm.cpp.o): In function `graphlab::dc_impl::dc_tcp_comm::send_loop(event_base*)':
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:648: undefined reference to `gl_event_base_dispatch'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(dc_tcp_comm.cpp.o): In function `graphlab::dc_impl::dc_tcp_comm::receive_loop(event_base*)':
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:589: undefined reference to `gl_event_base_dispatch'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(dc_tcp_comm.cpp.o): In function `graphlab::dc_impl::dc_tcp_comm::close()':
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:257: undefined reference to `gl_event_base_loopbreak'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:260: undefined reference to `gl_event_free'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:262: undefined reference to `gl_event_free'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:263: undefined reference to `gl_event_free'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:264: undefined reference to `gl_event_base_free'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:277: undefined reference to `gl_event_base_loopbreak'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:280: undefined reference to `gl_event_free'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:282: undefined reference to `gl_event_base_free'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(dc_tcp_comm.cpp.o): In function `graphlab::dc_impl::dc_tcp_comm::construct_events()':
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:183: undefined reference to `evthread_use_pthreads'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:186: undefined reference to `gl_event_base_new'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:192: undefined reference to `gl_event_new'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:195: undefined reference to `gl_event_add'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:196: undefined reference to `gl_event_new'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:199: undefined reference to `gl_event_base_new'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:206: undefined reference to `gl_event_new'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:212: undefined reference to `gl_event_new'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:217: undefined reference to `gl_event_add'
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:219: undefined reference to `gl_event_add'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(dc_tcp_comm.cpp.o): In function `graphlab::dc_impl::dc_tcp_comm::trigger_send_timeout(unsigned short, bool)':
/home/margot/share/PowerGraph-master/src/graphlab/rpc/dc_tcp_comm.cpp:236: undefined reference to `gl_event_active'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(zookeeper_common.cpp.o): In function `graphlab::zookeeper::create_dir(_zhandle*, std::string const&, std::string const&)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:98: undefined reference to `ZOO_OPEN_ACL_UNSAFE'
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:98: undefined reference to `zoo_create'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(zookeeper_common.cpp.o): In function `graphlab::zookeeper::delete_dir(_zhandle*, std::string const&, std::string const&)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:107: undefined reference to `zoo_delete'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(zookeeper_common.cpp.o): In function `graphlab::zookeeper::create_ephemeral_node(_zhandle*, std::string const&, std::string const&, std::string const&)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:120: undefined reference to `ZOO_OPEN_ACL_UNSAFE'
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:120: undefined reference to `ZOO_EPHEMERAL'
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:120: undefined reference to `zoo_create'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(zookeeper_common.cpp.o): In function `graphlab::zookeeper::delete_node(_zhandle*, std::string const&, std::string const&)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:129: undefined reference to `zoo_delete'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(zookeeper_common.cpp.o): In function `graphlab::zookeeper::delete_sequence_node(_zhandle*, std::string const&, int, std::string const&)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:149: undefined reference to `zoo_delete'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(zookeeper_common.cpp.o): In function `graphlab::zookeeper::create_ephemeral_sequence_node(_zhandle*, std::string const&, std::string const&, std::string const&)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:164: undefined reference to `ZOO_SEQUENCE'
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:164: undefined reference to `ZOO_EPHEMERAL'
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:164: undefined reference to `ZOO_OPEN_ACL_UNSAFE'
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:164: undefined reference to `zoo_create'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(zookeeper_common.cpp.o): In function `graphlab::zookeeper::get_node_value(_zhandle*, std::string const&, std::string const&)':
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:179: undefined reference to `zoo_get'
/home/margot/share/PowerGraph-master/src/graphlab/zookeeper/zookeeper_common.cpp:195: undefined reference to `zoo_get'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `boost::program_options::basic_command_line_parser<char>::options(boost::program_options::options_description const&)':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/parsers.hpp:51: undefined reference to `boost::program_options::detail::cmdline::set_options_description(boost::program_options::options_description const&)'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `boost::program_options::basic_command_line_parser<char>::positional(boost::program_options::positional_options_description const&)':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/parsers.hpp:61: undefined reference to `boost::program_options::detail::cmdline::set_positional_options(boost::program_options::positional_options_description const&)'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `boost::program_options::basic_command_line_parser<char>::allow_unregistered()':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/parsers.hpp:85: undefined reference to `boost::program_options::detail::cmdline::allow_unregistered()'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `boost::program_options::variables_map::operator[](std::string const&) const':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/variables_map.hpp:155: undefined reference to `boost::program_options::abstract_variables_map::operator[](std::string const&) const'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `graphlab::graphlab_options::set_ncpus(unsigned long)':
/home/margot/share/PowerGraph-master/src/graphlab/options/graphlab_options.hpp:113: undefined reference to `omp_set_num_threads'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `boost::program_options::typed_value<std::string, char>::xparse(boost::any&, std::vector<std::string, std::allocator<std::string> > const&) const':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/value_semantic.hpp:170: undefined reference to `boost::program_options::validate(boost::any&, std::vector<std::string, std::allocator<std::string> > const&, std::string*, int)'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `boost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t, std::string const&, std::string const&, int)':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/errors.hpp:372: undefined reference to `boost::program_options::validation_error::get_template(boost::program_options::validation_error::kind_t)'
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/errors.hpp:372: undefined reference to `boost::program_options::error_with_option_name::error_with_option_name(std::string const&, std::string const&, std::string const&, int)'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `boost::program_options::typed_value<std::string, char>::name() const':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/value_semantic.hpp:19: undefined reference to `boost::program_options::arg'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `to_internal<std::basic_string<char> >':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/convert.hpp:79: undefined reference to `boost::program_options::to_internal(std::string const&)'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `boost::program_options::basic_command_line_parser<char>::basic_command_line_parser(std::vector<std::string, std::allocator<std::string> > const&)':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/parsers.hpp:33: undefined reference to `boost::program_options::detail::cmdline::cmdline(std::vector<std::string, std::allocator<std::string> > const&)'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `to_internal<std::basic_string<char> >':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/convert.hpp:79: undefined reference to `boost::program_options::to_internal(std::string const&)'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `boost::program_options::basic_command_line_parser<char>::run()':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/parsers.hpp:107: undefined reference to `boost::program_options::detail::cmdline::get_canonical_option_prefix()'
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/parsers.hpp:108: undefined reference to `boost::program_options::detail::cmdline::run()'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o): In function `void boost::program_options::validate<unsigned long, char>(boost::any&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, unsigned long*, long)':
/home/margot/share/PowerGraph-master/deps/local/include/boost/program_options/detail/value_semantic.hpp:92: undefined reference to `boost::program_options::invalid_option_value::invalid_option_value(std::string const&)'
/home/margot/share/PowerGraph-master/release/src/graphlab//libgraphlab.a(command_line_options.cpp.o):(.rodata._ZTVN5boost15program_options11typed_valueISscEE[_ZTVN5boost15program_options11typed_valueISscEE]+0x38): undefined reference to `boost::program_options::value_semantic_codecvt_helper<char>::parse(boost::any&, std::vector<std::string, std::allocator<std::string> > const&, bool) const'
collect2: error: ld returned 1 exit status

How do I resolve this?

EDIT: I updated the above mpic++ command and updated the linker error.

Not sure where the issue is. Any suggestions?

Margot
  • 31
  • 2
  • Was boost installed with the Powergraph repository or locally on your system? Are you sure that version of boost is greater than v1.53 as the documentation suggests? – Kevin May 11 '19 at 03:28
  • 1
    For your manual linking, *order matters*. Place libraries (the `-l` (lower-case L) options) *last*. More specifically, the libraries needs to come after any object or source files using the libraries. – Some programmer dude May 11 '19 at 03:28
  • @Someprogrammerdude Thanks for pointing the ordering issue. I have fixed the order (post updated), but the boost linking error still continues. – Margot May 11 '19 at 04:01
  • @squareskittles. Yes, the boost version is v1.53.0. The documentation states it should be >= 1.53. – Margot May 11 '19 at 04:03
  • What happen if you change the top project directory CMakeLists.txt file with `add_link_options(-l:/home/margot/share/PowerGraph-master/deps/local/lib/libboost_program_options.a)` after the `project` command and recompile the project? – Oliv May 11 '19 at 09:41
  • Or better: add at the end of the top CMakeLists.txt file `target_link_libraries(graphlabb /home/margot/share/PowerGraph-master/deps/local/lib/libboost_program_options.a)` – Oliv May 11 '19 at 09:45
  • `CMake Error at CMakeLists.txt:754 (target_link_libraries): Cannot specify link libraries for target "graphlab" which is not built by this project.` – Margot May 11 '19 at 16:12

0 Answers0