Windows OS에서 최신 OSRM-Backend 빌드 방법에 대해서 정리한 글이며, Visual Studio 2019가 필요하다.
다른 버전의 Visual Studio 에서 빌드를 하기 위해 몇가지 설정이 더 필요한데,
이는 추후에 다시 정리할 생각이다.
1. 소스코드 다운
git clone github.com/Project-OSRM/osrm-backend
2. build-local.bat 수정
원래는 SET LOCAL_DEV=1 이 주석처리되어 있을 것이다.
따로 건드릴 필요가 없긴한데, 이 주석을 해제해주면 빌드 후 다시 빌드를 할때 불필요한 작업을 줄여줄 수 있다.
3. appveyor-build.bat 수정
본인 PC에 Visual Studio 2019 와 맞는 MSBuild 실행파일이 있는 경로로 바꾸어 준다.
밑에 vcvars64.bat 경로는 Visual Studio 2019 이면 따로 바꾸지 않아도 된다.
혹시 다르면 설치된 경로에 맞게 바꿔주면 된다.
CMake 실행 옵션에서 마지막에 -DCMAKE_GENERATOR_PLATFORM=x64 를 추가한다.
주의 할 점은 ^ 한 후에 추가해야 한다는 것이며,
OSRM은 64bit 환경이므로 이 옵션이 필요하다.
4. build-local.bat 실행
최초 배치 파일 실행하면
CMake와 osrm-deps 라고 osrm-backend 빌드를 위한 추가라이브러리를 다운받는다.
powershell Invoke-WebRequest 를 통해 다운받게 되므로 네트워크 상황에 따라 다운로드 속도가 느릴 수 있다.
최초 다운 후 빌드 실패 시 Invoke-WebRequest 가 실행되는 부분을 삭제하고 실행하길 바란다.
빌드 마무리 후 테스트를 진행하는데 실패하더라도 큰 신경 쓸 필요는 없다.
빌드 만 오류 없이 잘되면 된다.
7. dll 추가
빌드 후 프로그램 실행을 하면 다음과 같은 에러가 발생한다.
필요한 dll은 프로젝트_디렉터리\osrm-backend\osrm-deps\lib에 있으니 해당 경로에 모든 dll 파일을 실행파일이 존재하는 디렉터리로 옮기면 된다.
이로서 osrm 빌드 및 실행을 완료하였다.
끝으로 다운 받은 CMake와 osrm-deps의 압축해제를 위해 7z 가 필요하다.
이는 아래 링크에서 다운 받을 수 있다.
nodejs 도 빌드 후 진행하는 테스트를 위해 필요하다고 하니 설치하길 바란다.
이 글에서 빌드한 osrm 은 release용이므로 디버깅이 불가능하다.
CMake 실행 시 옵션을 debug로 바꾸면 빌드가 불가능하게 된다.
이는 의존 라이브러리(Boost, TBB) 가 디버깅 용이 없기 때문인데, 이에 대한 해결방법은 추후에 정리해보도록 하겠다.
'Open Source > OSRM' 카테고리의 다른 글
OSRM Backend build for debugging. (Win visual studio 2017) (0) | 2021.11.11 |
---|