Сборка OSRM - построение маршрутов

Готова 32-битная сборка, совместимая с WinXP:
OSRM-win32.zip

Собрана MinGW, так что может работать в несколько раз медленнее.

спасибо. на windows 8.1 x32, команды работают. в работе еще не проверил

Для комплекта: сборка Visual Studio 64 бит с поддержкой Windows XP:
OSRM-win64xp.zip

Привет, возможно не в тему - но сборка не запускается на двух машинах Windows - х64 - могу привести весь лог, но если коротко:

D:\osrm\data>osrm-extract -p car.lua D:\osrm\data\RU-MOW.osm.pbf
[info] Input file: RU-MOW.osm.pbf<[0m
[info] Profile: car.lua<[0m
[info] Threads: 4 (requested 8)<[0m
[info] Using script car.lua<[0m
[STXXL-MSG] STXXL v1.4.99 (prerelease/Release) (git 40361d83389234d05499be30fcdd
c2b6bd64e967)
[STXXL-MSG] CreateFile() error on path=D:\temp mode=28, retrying without DIRECT
mode.

[STXXL-MSG] Error allocating disk ‘D:\temp’, space: 1000 MiB, I/O implementation
: wincall queue=0

<[31m[warn] Error in stxxl::open_file_impl : CreateFile() path=D:\temp mode=28 :
error code 5 : +Єърчрэю т фюёЄєях.
: iostream stream error<[0m

Прошу подсказать что может решить вопрос! Спасибо!

А вы сами то смотрите что лог пишет? Проверьте temp на доступность и место.

Художника обитеть может каждый -

  1. Папка пересоздавалась, менялся путь
    2 )Выбирались различные диски как логические так и физические,
  2. Менялся размер space:
  3. Пробовал отключать также Kaspersky и прочие возможные блокировщики

С другой стороны - чудес не бывает!

Снимаю вопрос - либо каким-то чудом слэш отсутствовал
здесь: path=d:\temp**** либо помог запуск файла EXTRACT_FOOT.BAT
Спасибо откликнувшимся - возможно кому-то поможет!

Сегодня немало удивился - кажется OSRM учитывает smoothness при прокладке маршрутов !
http://osrm.at/cKo

Дорога Астрахань - Атырау (Гурьев), от границы до Ганюшкино очень плохой участок (smoothness=very_bad), потом до Атырау просто плохой (smoothness=bad). По отзыву местного жителя закатали совершенно новый асфальт по районной дороге, по которому он и рекомендует объезжать легковушкам (smoothness=good). И вот сегодня случайно обнаружил что OSRM предпочел более длинный маршрут, но с лучшим smoothness !

Может ли кто-то глянуть настройки OSRM и проверить, действительно учитывается smoothness ? Или это результат того что на новой дороге установлен surface=asphalt, а на оригинальной Котяевка-Ганюшкино surface вообще не проставлен ?

Заранее спасибо.

https://github.com/Project-OSRM/osrm-backend/blob/master/profiles/car.lua#L87
Хотя куда больше меня впечатлило

 ["ru:urban"] = 60

Спасибо, ровно то что нужно.

Добрый день!
Кто-нибудь собирал OSRM под FreeBSD? На сайте OSRM указано, что собирается, но что-то оно не выходит…
Версия ОС

root@freebsd10:~/osrm-backend/build # uname -a
FreeBSD freebsd10 10.1-RELEASE FreeBSD 10.1-RELEASE #0 r274401: Tue Nov 11 21:02:49 UTC 2014     root@releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64

Clang:

root@freebsd10:~/osrm-backend/build # clang -v
FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
Target: x86_64-unknown-freebsd10.1
Thread model: posix
Selected GCC installation: 

Из зависимостей на сайте OSRM (stxxl и luabind собирались из портов, остальное - из пакетов):

root@freebsd10:~/osrm-backend/build # pkg info | grep -E 'boost|expat|cmake|stxxl|tbb|lua|protobuf'
boost-libs-1.55.0_5            Free portable C++ libraries (without Boost.Python)
boost-python-libs-1.55.0       Framework for interfacing Python and C++
cmake-3.2.3                    Cross-platform Makefile generator
cmake-modules-3.2.3            Modules and Templates for CMake
expat-2.1.0_2                  XML 1.0 parser written in C
lua51-5.1.5_9                  Small, compilable scripting language providing easy access to C code
luabind-0.9.1_2                Library that helps you create bindings between C++ and Lua
protobuf-2.6.1                 Data interchange format library
stxxl-1.4.1                    Standard Template Library for Extra Large Data Sets
tbb-4.3.0_2                    Library that provides thread building blocks

Проблема в том, что затык еще на первой стадии сборки, когда деляю cmake, который делаю так:

cmake .. -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++

Как результат, в ошибках следующее:

root@freebsd10:~/osrm-backend/build/CMakeFiles # cat CMakeError.log                                                                                                                                                 
Performing C++ SOURCE FILE Test LTO_AVAILABLE failed with the following output:
Change Dir: /root/osrm-backend/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTryCompileExec1047893074/fast"
/usr/bin/make -f CMakeFiles/cmTryCompileExec1047893074.dir/build.make CMakeFiles/cmTryCompileExec1047893074.dir/build
/usr/local/bin/cmake -E cmake_progress_report /root/osrm-backend/build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building CXX object CMakeFiles/cmTryCompileExec1047893074.dir/src.cxx.o
/usr/bin/clang++    -DLTO_AVAILABLE   -flto -o CMakeFiles/cmTryCompileExec1047893074.dir/src.cxx.o -c /root/osrm-backend/build/CMakeFiles/CMakeTmp/src.cxx
Linking CXX executable cmTryCompileExec1047893074
/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec1047893074.dir/link.txt --verbose=1
/usr/bin/clang++    -DLTO_AVAILABLE    CMakeFiles/cmTryCompileExec1047893074.dir/src.cxx.o  -o cmTryCompileExec1047893074
CMakeFiles/cmTryCompileExec1047893074.dir/src.cxx.o: file not recognized: File format not recognized
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error code 1

Stop.
make[1]: stopped in /root/osrm-backend/build/CMakeFiles/CMakeTmp
*** Error code 1

Stop.
make: stopped in /root/osrm-backend/build/CMakeFiles/CMakeTmp

Source file was:
int main() { return 0; }
Determining if the pthread_create exist failed with the following output:
Change Dir: /root/osrm-backend/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTryCompileExec1213479688/fast"
/usr/bin/make -f CMakeFiles/cmTryCompileExec1213479688.dir/build.make CMakeFiles/cmTryCompileExec1213479688.dir/build
/usr/local/bin/cmake -E cmake_progress_report /root/osrm-backend/build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec1213479688.dir/CheckSymbolExists.c.o
/usr/bin/clang    -o CMakeFiles/cmTryCompileExec1213479688.dir/CheckSymbolExists.c.o   -c /root/osrm-backend/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c
Linking C executable cmTryCompileExec1213479688  
/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec1213479688.dir/link.txt --verbose=1
/usr/bin/clang       CMakeFiles/cmTryCompileExec1213479688.dir/CheckSymbolExists.c.o  -o cmTryCompileExec1213479688
CMakeFiles/cmTryCompileExec1213479688.dir/CheckSymbolExists.c.o: In function `main':
/root/osrm-backend/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:(.text+0x19): undefined reference to `pthread_create'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error code 1

Stop.
make[1]: stopped in /root/osrm-backend/build/CMakeFiles/CMakeTmp
*** Error code 1

Stop.
make: stopped in /root/osrm-backend/build/CMakeFiles/CMakeTmp

File /root/osrm-backend/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <pthread.h>

int main(int argc, char** argv)
{
  (void)argv;
#ifndef pthread_create
  return ((int*)(&pthread_create))[argc];
#else
  (void)argc;
  return 0;
#endif
}

Determining if the function pthread_create exists in the pthreads failed with the following output:
Change Dir: /root/osrm-backend/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTryCompileExec519672253/fast"
/usr/bin/make -f CMakeFiles/cmTryCompileExec519672253.dir/build.make CMakeFiles/cmTryCompileExec519672253.dir/build
/usr/local/bin/cmake -E cmake_progress_report /root/osrm-backend/build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec519672253.dir/CheckFunctionExists.c.o
/usr/bin/clang   -DCHECK_FUNCTION_EXISTS=pthread_create -o CMakeFiles/cmTryCompileExec519672253.dir/CheckFunctionExists.c.o   -c /usr/local/share/cmake/Modules/CheckFunctionExists.c
Linking C executable cmTryCompileExec519672253   
/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec519672253.dir/link.txt --verbose=1
/usr/bin/clang   -DCHECK_FUNCTION_EXISTS=pthread_create    CMakeFiles/cmTryCompileExec519672253.dir/CheckFunctionExists.c.o  -o cmTryCompileExec519672253  -lpthreads
/usr/bin/ld: cannot find -lpthreads
clang: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error code 1

Stop.
make[1]: stopped in /root/osrm-backend/build/CMakeFiles/CMakeTmp
*** Error code 1

Stop.
make: stopped in /root/osrm-backend/build/CMakeFiles/CMakeTmp


Performing C++ SOURCE FILE Test LUABIND51_WORKS failed with the following output:
Change Dir: /root/osrm-backend/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTryCompileExec74373479/fast"
/usr/bin/make -f CMakeFiles/cmTryCompileExec74373479.dir/build.make CMakeFiles/cmTryCompileExec74373479.dir/build
/usr/local/bin/cmake -E cmake_progress_report /root/osrm-backend/build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building CXX object CMakeFiles/cmTryCompileExec74373479.dir/src.cxx.o
/usr/bin/clang++    -Wall -Wunreachable-code -pedantic -fPIC -std=c++11  -DLUABIND51_WORKS -O3 -DNDEBUG -I/usr/local/include -I/usr/local/include/luabind -I/usr/local/include/lua51 -o CMakeFiles/cmTryCompileExec74373479.dir/src.cxx.o -c /root/osrm-backend/build/CMakeFiles/CMakeTmp/src.cxx
In file included from /root/osrm-backend/build/CMakeFiles/CMakeTmp/src.cxx:2:
In file included from /usr/local/include/luabind/luabind.hpp:28:
In file included from /usr/local/include/luabind/class.hpp:93:
In file included from /usr/local/include/luabind/back_reference.hpp:27:
In file included from /usr/local/include/luabind/wrapper_base.hpp:31:
In file included from /usr/local/include/luabind/detail/call_member.hpp:30:
In file included from /usr/local/include/luabind/detail/convert_to_lua.hpp:28:
In file included from /usr/local/include/luabind/detail/policy.hpp:51:
/usr/local/include/luabind/detail/object_rep.hpp:77:11: error: no member named 'malloc' in namespace 'std'; did you mean 'valloc'?
                        return std::malloc(size);
                               ^~~~~~~~~~~
                               valloc
/usr/include/unistd.h:583:7: note: 'valloc' declared here
void    *valloc(size_t);                        /* obsoleted by malloc() */
         ^
In file included from /root/osrm-backend/build/CMakeFiles/CMakeTmp/src.cxx:2:
In file included from /usr/local/include/luabind/luabind.hpp:28:
In file included from /usr/local/include/luabind/class.hpp:93:
In file included from /usr/local/include/luabind/back_reference.hpp:27:
In file included from /usr/local/include/luabind/wrapper_base.hpp:31:
In file included from /usr/local/include/luabind/detail/call_member.hpp:30:
In file included from /usr/local/include/luabind/detail/convert_to_lua.hpp:28:
In file included from /usr/local/include/luabind/detail/policy.hpp:51:
/usr/local/include/luabind/detail/object_rep.hpp:84:9: error: no type named 'free' in namespace 'std'
                        std::free(storage);
                        ~~~~~^
2 errors generated.
*** Error code 1

Stop.
make[1]: stopped in /root/osrm-backend/build/CMakeFiles/CMakeTmp
*** Error code 1

Stop.
make: stopped in /root/osrm-backend/build/CMakeFiles/CMakeTmp

Source file was:
#include  "lua.h"
#include <luabind/luabind.hpp>
 int main() { lua_State *myLuaState = luaL_newstate(); luabind::open(myLuaState);  return 0;}

Если кто собирал под фряхой, подскажите, что делаю не так?

LUABind видимо собран GCC и падает на линковке. Это самый странный этап во время сборки osrm. Попробуй включить GCC toolset.

Да беда в том, что в 10 фряхе нет GCC… Все и так было собрано Clang’ом.

Предлагаю покопать тогда в сторону stdlib’а. Один ли он стоит? И с той ли библиотекой собирается osrm?

Во, почти собрал. GCC 4.8 почти без проблем справился. За исключением одного косяка - он не мог найти функцию std::stoi(). Как решение - замена этой функции, так как под фряхой народ не нашел решения этой проблемы, и все переписывают ее сами (надеюсь будет работать):

cmake .. -DCMAKE_CXX_COMPILER_ID=GNU -DCMAKE_C_COMPILER=/usr/local/bin/gcc48 -DCMAKE_CXX_COMPILER=/usr/local/bin/g++48 -DCMAKE_CXX_FLAGS='-I/usr/local/lib/gcc48/gcc/x86_64-portbld-freebsd10.1/4.8.5/include/'

Только вот проблема с линковкой… сейчас попробую Boost другой версии поставить, может поможет…

root@freebsd10:~/Project-OSRM/build # make osrm-routed
[  4%] Built target EXCEPTION
[  8%] Configuring revision fingerprint
[  8%] Built target FingerPrintConfigure
[ 16%] Built target IMPORT
[ 20%] Built target LOGGER
[ 24%] Built target PHANTOMNODE
[ 28%] Built target MERCATOR
[ 32%] Built target ANGLE
[ 40%] Built target COORDINATE
[ 44%] Built target GITDESCRIPTION
Scanning dependencies of target FINGERPRINT
[ 48%] Building CXX object CMakeFiles/FINGERPRINT.dir/util/fingerprint.cpp.o
[ 48%] Built target FINGERPRINT
Linking CXX static library libOSRM.a
[ 84%] Built target OSRM
Linking CXX executable osrm-routed
/tmp//ccztKpuL.ltrans0.ltrans.o: In function `boost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t, std::string const&, std::string const&, int) [clone .local.3980.21770]':
<artificial>:(.text+0x884c): undefined reference to `boost::program_options::error_with_option_name::error_with_option_name(std::string const&, std::string const&, std::string const&, int)'
/tmp//ccztKpuL.ltrans16.ltrans.o: In function `void boost::program_options::validate<boost::filesystem::path, 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&, boost::filesystem::path*, long) [clone .local.3231] [clone .constprop.5536.10286]':
<artificial>:(.text+0x876): undefined reference to `boost::program_options::invalid_option_value::invalid_option_value(std::string const&)'
/tmp//ccztKpuL.ltrans16.ltrans.o: In function `boost::program_options::typed_value<int, char>::xparse(boost::any&, std::vector<std::string, std::allocator<std::string> > const&) const [clone .local.3232]':
<artificial>:(.text+0xdbf): undefined reference to `boost::program_options::invalid_option_value::invalid_option_value(std::string const&)'
/tmp//ccztKpuL.ltrans16.ltrans.o: In function `main':
<artificial>:(.text.startup+0x14d): undefined reference to `boost::program_options::options_description::options_description(std::string const&, unsigned int, unsigned int)'
<artificial>:(.text.startup+0x46e): undefined reference to `boost::program_options::options_description::options_description(std::string const&, unsigned int, unsigned int)'
<artificial>:(.text.startup+0xb18): undefined reference to `boost::program_options::options_description::options_description(std::string const&, unsigned int, unsigned int)'
<artificial>:(.text.startup+0xce3): undefined reference to `boost::program_options::options_description::options_description(std::string const&, unsigned int, unsigned int)'
<artificial>:(.text.startup+0xf26): undefined reference to `boost::program_options::to_internal(std::string const&)'
<artificial>:(.text.startup+0xf68): undefined reference to `boost::program_options::detail::cmdline::cmdline(std::vector<std::string, std::allocator<std::string> > const&)'
<artificial>:(.text.startup+0x1d61): undefined reference to `boost::program_options::operator<<(std::ostream&, boost::program_options::options_description const&)'
<artificial>:(.text.startup+0x1f94): undefined reference to `boost::program_options::operator<<(std::ostream&, boost::program_options::options_description const&)'
<artificial>:(.text.startup+0x2c6a): undefined reference to `boost::program_options::basic_parsed_options<char> boost::program_options::parse_config_file<char>(std::basic_istream<char, std::char_traits<char> >&, boost::program_options::options_description const&, bool)'
/tmp//ccztKpuL.ltrans16.ltrans.o:(.data.rel.ro+0x58): 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'
/tmp//ccztKpuL.ltrans16.ltrans.o:(.data.rel.ro+0xf8): 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'
/tmp//ccztKpuL.ltrans16.ltrans.o:(.data.rel.ro+0xd38): 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'
/tmp//ccztKpuL.ltrans16.ltrans.o:(.data.rel.ro._ZTVN5boost15program_options11typed_valueIbcEE[_ZTVN5boost15program_options11typed_valueIbcEE]+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'
/tmp//ccztKpuL.ltrans18.ltrans.o:(.data.rel.ro._ZTVN5boost15program_options16validation_errorE[_ZTVN5boost15program_options16validation_errorE]+0x30): undefined reference to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
/tmp//ccztKpuL.ltrans18.ltrans.o:(.data.rel.ro._ZTVN5boost15program_options20invalid_option_valueE[_ZTVN5boost15program_options20invalid_option_valueE]+0x30): undefined reference to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
/tmp//ccztKpuL.ltrans18.ltrans.o:(.data.rel.ro+0x278): undefined reference to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
/tmp//ccztKpuL.ltrans18.ltrans.o:(.data.rel.ro+0x4b0): undefined reference to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
/tmp//ccztKpuL.ltrans18.ltrans.o:(.data.rel.ro._ZTVN5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15program_options16validation_errorEEEEE[_ZTVN5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15program_options16validation_errorEEEEE]+0x38): undefined reference to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
/tmp//ccztKpuL.ltrans18.ltrans.o:(.data.rel.ro._ZTVN5boost16exception_detail19error_info_injectorINS_15program_options16validation_errorEEE[_ZTVN5boost16exception_detail19error_info_injectorINS_15program_options16validation_errorEEE]+0x30): more undefined references to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const' follow
/tmp//ccztKpuL.ltrans2.ltrans.o: In function `boost::program_options::typed_value<bool, char>::xparse(boost::any&, std::vector<std::string, std::allocator<std::string> > const&) const [clone .local.3984]':
<artificial>:(.text+0x15c9): undefined reference to `boost::program_options::validate(boost::any&, std::vector<std::string, std::allocator<std::string> > const&, bool*, int)'
/tmp//ccztKpuL.ltrans2.ltrans.o: In function `boost::program_options::typed_value<std::string, char>::xparse(boost::any&, std::vector<std::string, std::allocator<std::string> > const&) const [clone .local.3985]':
<artificial>:(.text+0x1619): undefined reference to `boost::program_options::validate(boost::any&, std::vector<std::string, std::allocator<std::string> > const&, std::string*, int)'
/tmp//ccztKpuL.ltrans6.ltrans.o:(.data.rel.ro._ZTVN5boost15program_options27invalid_command_line_syntaxE[_ZTVN5boost15program_options27invalid_command_line_syntaxE]+0x30): undefined reference to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
/tmp//ccztKpuL.ltrans6.ltrans.o:(.data.rel.ro._ZTVN5boost15program_options26invalid_config_file_syntaxE[_ZTVN5boost15program_options26invalid_config_file_syntaxE]+0x30): undefined reference to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
/tmp//ccztKpuL.ltrans6.ltrans.o:(.data.rel.ro._ZTVN5boost15program_options14invalid_syntaxE[_ZTVN5boost15program_options14invalid_syntaxE]+0x30): undefined reference to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
/tmp//ccztKpuL.ltrans6.ltrans.o:(.data.rel.ro._ZTVN5boost15program_options15required_optionE[_ZTVN5boost15program_options15required_optionE]+0x30): undefined reference to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
/tmp//ccztKpuL.ltrans6.ltrans.o:(.data.rel.ro._ZTVN5boost15program_options20multiple_occurrencesE[_ZTVN5boost15program_options20multiple_occurrencesE]+0x30): undefined reference to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
/tmp//ccztKpuL.ltrans6.ltrans.o:(.data.rel.ro._ZTVN5boost15program_options15multiple_valuesE[_ZTVN5boost15program_options15multiple_valuesE]+0x30): more undefined references to `boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const' follow
collect2: error: ld returned 1 exit status
*** Error code 1

Stop.
make[3]: stopped in /root/Project-OSRM/build
*** Error code 1

Stop.
make[2]: stopped in /root/Project-OSRM/build
*** Error code 1

Stop.
make[1]: stopped in /root/Project-OSRM/build
*** Error code 1

Stop.
make: stopped in /root/Project-OSRM/build

PS: пишу это скорее для людей, у которых вероятно появятся подобные проблемы…

Я собирал под FreeBSD для тестов, в том числе CLang (правда, давно).
Cоветую luabind собрать вручную с https://github.com/DennisOSRM/luabind или, может быть, из портов.
Если boost будете использовать новый, luabind нужно пересобрать с ним.

Да в том то и дело, что luabind, boost собраны из портов. Сейчас хочу попробовать собрать старую версию boost, потом отдельно собрать luabind и попробовать с этим собрать.

Вроде бы, я собирал свежий boost из портов, затем luabind из портов и всё работало.
Главное - заранее удалить из системы соответствующие бинарные пакеты. (CMake любит захватить библиотеку из другой папки, он под виндой у меня даже случайные dll-ки из program files цепляет).

В общем, собраться с помощью GCC оно собралось, только вот seg-fault’ится… Странно как-то… А вот Clang все никак не может собрать.

#0  0x0000000000000000 in ?? ()
#1  0x00000008026558c8 in __cxxabiv1::__dynamic_cast (src_ptr=0x8029011c0 <(anonymous namespace)::ctype_c>, src_type=0x8028e5fb0 <typeinfo for std::locale::facet>, 
    dst_type=0x8028e5d40 <typeinfo for std::ctype<char>>, src2dst=0) at ../../.././../gcc-4.8.5/libstdc++-v3/libsupc++/dyncast.cc:72
#2  0x0000000802681650 in std::has_facet<std::ctype<char> > (__loc=...) at /usr/ports/lang/gcc48/work/build/x86_64-portbld-freebsd10.1/libstdc++-v3/include/bits/locale_classes.tcc:110
#3  0x0000000802676634 in std::basic_ios<char, std::char_traits<char> >::_M_cache_locale (this=this@entry=0x8028ffea8 <std::cout+8>, __loc=...)
    at /usr/ports/lang/gcc48/work/build/x86_64-portbld-freebsd10.1/libstdc++-v3/include/bits/basic_ios.tcc:159
#4  0x0000000802676780 in std::basic_ios<char, std::char_traits<char> >::init (this=this@entry=0x8028ffea8 <std::cout+8>, __sb=0x8028ff780 <__gnu_internal::buf_cout_sync>)
    at /usr/ports/lang/gcc48/work/build/x86_64-portbld-freebsd10.1/libstdc++-v3/include/bits/basic_ios.tcc:132
#5  0x0000000802668b91 in basic_ostream (__sb=<optimized out>, this=<optimized out>, __in_chrg=<optimized out>, __vtt_parm=<optimized out>)
    at /usr/ports/lang/gcc48/work/build/x86_64-portbld-freebsd10.1/libstdc++-v3/include/ostream:85
#6  std::ios_base::Init::Init (this=<optimized out>) at ../../../.././../gcc-4.8.5/libstdc++-v3/src/c++98/ios_init.cc:91
#7  0x00000008018e9a90 in _GLOBAL__sub_I_compiler_log_formatter.cpp () from /usr/local/lib/libboost_unit_test_framework.so.1.49.0
#8  0x00000008006ba7a0 in ?? () from /libexec/ld-elf.so.1
#9  0x00000008006b9d17 in ?? () from /libexec/ld-elf.so.1
#10 0x00000008006b8129 in ?? () from /libexec/ld-elf.so.1
#11 0x0000000000000000 in ?? ()

Добрый день, специалисты!
У меня есть необходимость в проге под винду (7 sp1 x64) на c++ обращаться к OSRM и получать из него маршруты.
Развернуть OSRM по этой инструкции: https://github.com/Project-OSRM/osrm-backend/wiki/Windows-Compilation не получается.
Проясните мне пожалуйста, что вообще должно получиться в итоге, чтоб можно было обращаться к OSRM из приложений на c++ (какой-то сервер, библиотека, служба какая-то), т.е. что такое физически “Сборка OSRM”???
Ссылки на готовые сборки в этой теме уже устарели:(
Спасибо!!!