Problems installing Time Dependent Routing code
Maintainers usually reply within 3 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 30/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- cmake, postgresql
- Domain
- build-system, databases
Research direction
The issue is a compilation error in extra/driving_distance/src/boost_drivedist.cpp related to Boost adjacency_list and edge_weight_t. Start by examining the CMake configuration and Boost version compatibility. Check the pgRouting build instructions and the specific Boost graph library usage. The last comment was over 7 years ago, so the codebase and dependencies have likely changed significantly. Look for updated build scripts or similar issues in the repository to understand current build practices.
Written by the indexing model from the issue text.
Description
I am following instructions here to installing time dependent routing. When I attempt to compile the code with the Time Dependent Routing in it on Ubuntu 14.04, I get a series of errors:
Building CXX object extra/driving_distance/src/CMakeFiles/routing_dd.dir/boost_drivedist.o In file included from /usr/include/boost/graph/adjacency_list.hpp:246:0, from /home/ubuntu/workspace/pgrouting/extra/driving_distance/src/boost_drivedist.cpp:25: /usr/include/boost/graph/detail/adjacency_list.hpp: In instantiation of ‘struct boost::detail::adj_list_any_edge_pmap::bind_<boost::adjacency_list<boost::listS, boost::vecS, boost::directedS, Vertex, Edge>, Edge, boost::edge_weight_t>’: /usr/include/boost/graph/detail/adjacency_list.hpp:2684:12: required from ‘struct boost::detail::adj_list_choose_edge_pmap<boost::edge_weight_t, boost::adjacency_list<boost::listS, boost::vecS, boost::directedS, Vertex, Edge>, Edge>’ /usr/include/boost/graph/detail/adjacency_list.hpp:2689:14: required from ‘struct boost::detail::adj_list_edge_property_selector::bind_<boost::adjacency_list<boost::listS, boost::vecS, boost::directedS, Vertex, Edge>, Edge, boost::edge_weight_t>’ /usr/include/boost/graph/properties.hpp:208:12: required from ‘struct boost::detail::edge_property_map<boost::adjacency_list<boost::listS, boost::vecS, boost::directedS, Vertex, Edge>, boost::edge_weight_t>’ /usr/include/boost/graph/properties.hpp:228:10: required from ‘struct boost::property_map<boost::adjacency_list<boost::listS, boost::vecS, boost::directedS, Vertex, Edge>, boost::edge_weight_t>’ /home/ubuntu/workspace/pgrouting/extra/driving_distance/src/boost_drivedist.cpp:87:39: required from here /usr/include/boost/graph/detail/adjacency_list.hpp:2652:29: error: forming reference to void typedef value_type& reference; ^ /usr/include/boost/graph/detail/adjacency_list.hpp:2653:35: error: forming reference to void typedef const value_type& const_reference; ^ /usr/include/boost/graph/detail/adjacency_list.hpp:2657:61: error: forming reference to void typename Graph::vertex_descriptor,Property,Tag> type; ^ /usr/include/boost/graph/detail/adjacency_list.hpp:2660:68: error: forming reference to void typename Graph::vertex_descriptor,const Property, Tag> const_type; ^ /home/ubuntu/workspace/pgrouting/extra/driving_distance/src/boost_drivedist.cpp: In function ‘int boost_dijkstra_dist(edge_t*, unsigned int, int, double, bool, bool, path_element_t**, int*, char**)’: /home/ubuntu/workspace/pgrouting/extra/driving_distance/src/boost_drivedist.cpp:88:27: error: no matching function for call to ‘get(boost::edge_weight_t, graph_t&)’ get(edge_weight, graph); ^ /home/ubuntu/workspace/pgrouting/extra/driving_distance/src/boost_drivedist.cpp:88:27: note: candidates are: In file included from /usr/include/boost/graph/adjacency_list.hpp:36:0, from /home/ubuntu/workspace/pgrouting/extra/driving_distance/src/boost_drivedist.cpp:25: /usr/include/boost/property_map/property_map.hpp:179:19: note: template<class T> const T& get(const T*, std::ptrdiff_t) inline const T& get(const T* pa, std::ptrdiff_t k) { return pa[k]; } ^ /usr/include/boost/property_map/property_map.hpp:179:19: note: template argument deduction/substitution failed: /home/ubuntu/workspace/pgrouting/extra/driving_distance/src/boost_drivedist.cpp:88:27: note: mismatched types ‘const T*’ and ‘boost::edge_weight_t’ get(edge_weight, graph);
I wondered if this was due to the boost version (1.54), or the CGAL version (10.0.1). I have tried following the instructions here and using the pgrouting4w fork, but that gave similar errors.
Anyone know how this library can be built? Since it hasn't been updated since 2011, the build systems and all the libraries must have changed so I assume it's something to do with that.
- Dominant language
- C++
- Stars
- 1.4k
- Forks
- 397
- Avg merge
- 2d 16h
- Merged PRs (30d)
- 8
Getting set up
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from pgRouting/pgrouting
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 3 days
-
Administrative Enhancement
Difficulty 1/5 Under an hour Newbie friendliness 80/100
Maintainers usually reply within 3 days
-
points_input Developers docPossibly taken @withaman69 claimed this 101 days ago. OpenC/C++ Developers Doc. good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
pgRouting/pgrouting#973 · 10 comments ·
Maintainers usually reply within 3 days
-
get_check_data developers docPossibly taken @withaman69 claimed this 102 days ago. OpenC/C++ Developers Doc. good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
pgRouting/pgrouting#972 · 7 comments ·
Maintainers usually reply within 3 days
All issues in pgRouting/pgrouting
Similar issues
-
std::fdim drops partial derivative w.r.t second argument in forward and reverse modePossibly taken @ADITYASINGH1206 claimed this today. Open
Difficulty 1/5 Under an hour Newbie friendliness 85/100
vgvassilev/clad#2534 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Maintainers usually reply within 1 day
-
HAP.cpp fixOpen
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
KLayout/klayout#2554 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day