daniel-j-h / libosrmc

Pure C bindings for libosrm
MIT License
18 stars 8 forks source link

Make Error #21

Closed porkedpie closed 3 years ago

porkedpie commented 3 years ago
$ make g++ -O2 -Wall -Wextra -pedantic -std=c++11 -fvisibility=hidden -fPIC -fno-rtti -IC:/Users/[username]/Downloads/osrm-backend-master -IC:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include -IC:/Users/[username]/Downloads/osrm-backend-master/osrm-deps -IC:UsersmattpasDownloadsosrm-backend-master/osrm-deps -IC:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/libs/include -IC:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/libs/include/osrm -DBOOST_LIB_DIAGNOSTIC -D_CRT_SECURE_NO_WARNINGS -DNOMINMAX -D_USE_MATH_DEFINES -D_WIN32_WINNT=0x0501 -DXML_STATIC -DBOOST_SPIRIT_USE_PHOENIX_V3 -DBOOST_RESULT_OF_USE_DECLTYPE -DBOOST_FILESYSTEM_NO_DEPRECATED -c -o osrmc.o osrmc.cc In file included from C:/Users/[username]/Downloads/osrm-backend-master/include/osrm/route_parameters.hpp:31, from osrmc.cc:11: C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp: In member function ‘bool osrm::engine::api::RouteParameters::IsValid() const’: C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:187:74: error: use of auto’ in lambda parameter declaration only available with ‘-std=c++14’ or ‘-std=gnu++14’ 187 std::all_of(waypoints.begin(), waypoints.end(), [this](const auto &w) { ^~~~ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp: In lambda function: C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:188:26: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 188 return w < coordinates.size(); ^~~~~~ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp: In function ‘bool osrm::engine::api::operator&(osrm::engine::api::RouteParameters::AnnotationsType, osrm::engine::api::RouteParameters::AnnotationsType)’: C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:197:26: error: ‘underlying_type_t’ in namespace ‘std’ does not name a template type; did you mean ‘underlying_type’? 197 static_cast<std::underlying_type_t>(lhs) & ^~~~~ underlying_type C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:197:43: error: expected ‘>’ before ‘<’ token 197 static_cast<std::underlying_type_t>(lhs) & ^ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:197:43: error: expected ‘(’ before ‘<’ token 197 static_cast<std::underlying_type_t>(lhs) & ^ ( C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:197:43: error: expected primary-expression before ‘<’ token C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:197:76: error: expected primary-expression before ‘>>’ token 197 static_cast<std::underlying_type_t>(lhs) & ^~ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:198:26: error: ‘underlying_type_t’ in namespace ‘std’ does not name a template type; did you mean ‘underlying_type’? 198 static_cast<std::underlying_type_t>(rhs)); ^~~~~ underlying_type C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:198:43: error: expected ‘>’ before ‘<’ token 198 static_cast<std::underlying_type_t>(rhs)); ^ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:198:43: error: expected ‘(’ before ‘<’ token 198 static_cast<std::underlying_type_t>(rhs)); ^ ( C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:198:43: error: expected primary-expression before ‘<’ token C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:198:76: error: expected primary-expression before ‘>>’ token 198 static_cast<std::underlying_type_t>(rhs)); ^~ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:198:84: error: expected ‘)’ before ‘;’ token 198 static_cast<std::underlying_type_t>(rhs)); ^ ) C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:198:84: error: expected ‘)’ before ‘;’ token 198 static_cast<std::underlying_type_t>(rhs)); ^ ) C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp: In function ‘osrm::engine::api::RouteParameters::AnnotationsType osrm::engine::api::operator (osrm::engine::api::RouteParameters::AnnotationsType, osrm::engine::api::RouteParameters::AnnotationsType)’: C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:205:26: error: ‘underlying_type_t’ in namespace ‘std’ does not name a template type; did you mean ‘underlying_type’? 205 static_cast<std::underlying_type_t>(lhs) ^~~~~ underlying_type C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:205:43: error: expected ‘>’ before ‘<’ token 205 static_cast<std::underlying_type_t>(lhs) ^ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:205:43: error: expected ‘(’ before ‘<’ token 205 static_cast<std::underlying_type_t>(lhs) ^ ( C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:205:43: error: expected primary-expression before ‘<’ token C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:205:76: error: expected primary-expression before ‘>>’ token 205 static_cast<std::underlying_type_t>(lhs) ^~ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:206:26: error: ‘underlying_type_t’ in namespace ‘std’ does not name a template type; did you mean ‘underlying_type’? 206 static_cast<std::underlying_type_t>(rhs)); ^~~~~ underlying_type C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:206:43: error: expected ‘>’ before ‘<’ token 206 static_cast<std::underlying_type_t>(rhs)); ^ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:206:43: error: expected ‘(’ before ‘<’ token 206 static_cast<std::underlying_type_t>(rhs)); ^ ( C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:206:43: error: expected primary-expression before ‘<’ token C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:206:76: error: expected primary-expression before ‘>>’ token 206 static_cast<std::underlying_type_t>(rhs)); ^~ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:206:84: error: expected ‘)’ before ‘;’ token 206 static_cast<std::underlying_type_t>(rhs)); ^ ) C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:206:84: error: expected ‘)’ before ‘;’ token 206 static_cast<std::underlying_type_t>(rhs)); ^ ) C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/route_parameters.hpp:204:46: note: to match this ‘(’ 204 return (RouteParameters::AnnotationsType)( ^ In file included from C:/Users/[username]/Downloads/osrm-backend-master/include/osrm/table_parameters.hpp:31, from osrmc.cc:12: C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp: In function ‘bool osrm::engine::api::operator&(osrm::engine::api::TableParameters::AnnotationsType, osrm::engine::api::TableParameters::AnnotationsType)’: C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:152:26: error: ‘underlying_type_t’ in namespace ‘std’ does not name a template type; did you mean ‘underlying_type’? 152 static_cast<std::underlying_type_t>(lhs) & ^~~~~ underlying_type C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:152:43: error: expected ‘>’ before ‘<’ token 152 static_cast<std::underlying_type_t>(lhs) & ^ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:152:43: error: expected ‘(’ before ‘<’ token 152 static_cast<std::underlying_type_t>(lhs) & ^ ( C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:152:43: error: expected primary-expression before ‘<’ token C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:152:76: error: expected primary-expression before ‘>>’ token 152 static_cast<std::underlying_type_t>(lhs) & ^~ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:153:26: error: ‘underlying_type_t’ in namespace ‘std’ does not name a template type; did you mean ‘underlying_type’? 153 static_cast<std::underlying_type_t>(rhs)); ^~~~~ underlying_type C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:153:43: error: expected ‘>’ before ‘<’ token 153 static_cast<std::underlying_type_t>(rhs)); ^ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:153:43: error: expected ‘(’ before ‘<’ token 153 static_cast<std::underlying_type_t>(rhs)); ^ ( C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:153:43: error: expected primary-expression before ‘<’ token C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:153:76: error: expected primary-expression before ‘>>’ token 153 static_cast<std::underlying_type_t>(rhs)); ^~ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:153:84: error: expected ‘)’ before ‘;’ token 153 static_cast<std::underlying_type_t>(rhs)); ^ ) C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:153:84: error: expected ‘)’ before ‘;’ token 153 static_cast<std::underlying_type_t>(rhs)); ^ ) C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp: In function ‘osrm::engine::api::TableParameters::AnnotationsType osrm::engine::api::operator (osrm::engine::api::TableParameters::AnnotationsType, osrm::engine::api::TableParameters::AnnotationsType)’: C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:160:26: error: ‘underlying_type_t’ in namespace ‘std’ does not name a template type; did you mean ‘underlying_type’? 160 static_cast<std::underlying_type_t>(lhs) ^~~~~ underlying_type C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:160:43: error: expected ‘>’ before ‘<’ token 160 static_cast<std::underlying_type_t>(lhs) ^ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:160:43: error: expected ‘(’ before ‘<’ token 160 static_cast<std::underlying_type_t>(lhs) ^ ( C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:160:43: error: expected primary-expression before ‘<’ token C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:160:76: error: expected primary-expression before ‘>>’ token 160 static_cast<std::underlying_type_t>(lhs) ^~ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:161:26: error: ‘underlying_type_t’ in namespace ‘std’ does not name a template type; did you mean ‘underlying_type’? 161 static_cast<std::underlying_type_t>(rhs)); ^~~~~ underlying_type C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:161:43: error: expected ‘>’ before ‘<’ token 161 static_cast<std::underlying_type_t>(rhs)); ^ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:161:43: error: expected ‘(’ before ‘<’ token 161 static_cast<std::underlying_type_t>(rhs)); ^ ( C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:161:43: error: expected primary-expression before ‘<’ token C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:161:76: error: expected primary-expression before ‘>>’ token 161 static_cast<std::underlying_type_t>(rhs)); ^~ C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:161:84: error: expected ‘)’ before ‘;’ token 161 static_cast<std::underlying_type_t>(rhs)); ^ ) C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:161:84: error: expected ‘)’ before ‘;’ token 161 static_cast<std::underlying_type_t>(rhs)); ^ ) C:/Users/[username]/Downloads/osrm-backend-master/osrm-deps/include/engine/api/table_parameters.hpp:159:46: note: to match this ‘(’ 159 return (TableParameters::AnnotationsType)( ^ osrmc.cc: In function ‘osrmc_route_response* osrmc_route(osrmc_osrm_t, osrmc_route_params_t, osrmc_error**)’: osrmc.cc:145:56: error: cannot convert ‘osrm::util::json::Object’ to ‘osrm::engine::api::ResultT&’ {aka ‘mapbox::util::variant<osrm::util::json::Object, std::basic_string<char, std::char_traits, std::allocator >, flatbuffers::FlatBufferBuilder>&’} 145 const auto status = osrm_typed->Route(params_typed, out); ^~~~
osrm::util::json::Object
In file included from osrmc.cc:10: C:/Users/[username]/Downloads/osrm-backend-master/include/osrm/osrm.hpp:87:81: note: initializing argument 2 of ‘osrm::engine::Status osrm::OSRM::Route(const osrm::engine::api::RouteParameters&, osrm::engine::api::ResultT&) const’ 87 Status Route(const RouteParameters &parameters, osrm::engine::api::ResultT &result) const; ~~~~~~^~~~ osrmc.cc: In function ‘void osrmc_route_with(osrmc_osrm_t, osrmc_route_params_t, osrmc_waypoint_handler_t, void*, osrmc_error**)’: osrmc.cc:163:56: error: cannot convert ‘osrm::util::json::Object’ to ‘osrm::engine::api::ResultT&’ {aka ‘mapbox::util::variant<osrm::util::json::Object, std::basic_string<char, std::char_traits, std::allocator >, flatbuffers::FlatBufferBuilder>&’} 163 const auto status = osrm_typed->Route(*params_typed, result); ^~
osrm::util::json::Object
In file included from osrmc.cc:10: C:/Users/[username]/Downloads/osrm-backend-master/include/osrm/osrm.hpp:87:81: note: initializing argument 2 of ‘osrm::engine::Status osrm::OSRM::Route(const osrm::engine::api::RouteParameters&, osrm::engine::api::ResultT&) const’ 87 Status Route(const RouteParameters &parameters, osrm::engine::api::ResultT &result) const; ~~~~~~^~~~ osrmc.cc: In function ‘osrmc_table_response* osrmc_table(osrmc_osrm_t, osrmc_table_params_t, osrmc_error**)’: osrmc.cc:280:56: error: cannot convert ‘osrm::util::json::Object’ to ‘osrm::engine::api::ResultT&’ {aka ‘mapbox::util::variant<osrm::util::json::Object, std::basic_string<char, std::char_traits, std::allocator >, flatbuffers::FlatBufferBuilder>&’} 280 const auto status = osrm_typed->Table(params_typed, out); ^~~~
osrm::util::json::Object

In file included from osrmc.cc:10: C:/Users/[username]/Downloads/osrm-backend-master/include/osrm/osrm.hpp:96:81: note: initializing argument 2 of ‘osrm::engine::Status osrm::OSRM::Table(const osrm::engine::api::TableParameters&, osrm::engine::api::ResultT&) const’ 96 | Status Table(const TableParameters &parameters, osrm::engine::api::ResultT &result) const; | ~~~~~~^~~~ osrmc.cc: In function ‘float osrmc_table_response_distance(osrmc_table_response_t, long unsigned int, long unsigned int, osrmc_error)’: osrmc.cc:342:36: warning: missing initializer for member ‘osrmc_error::message’ [-Wmissing-field-initializers] 342 | error = new osrmc_error{e.what()}; | ^ make: [: osrmc.o] Error 1

daniel-j-h commented 3 years ago

This looks like a duplicate of https://github.com/daniel-j-h/libosrmc/issues/11 - the latest upstream libosrm is breaking their API, and https://github.com/daniel-j-h/libosrmc/pull/17 will fix it.