How to Install Open Source Routing Machine (OSRM) on Ubuntu Server Latest
Open Source Routing Machine (OSRM) is a routing engine designed for OpenStreetMap data. It allows you to calculate the shortest or fastest route between two or more points, and can also provide turn-by-turn directions for navigation. In this tutorial, we will show you how to install OSRM on Ubuntu Server.
Prerequisites
Before starting, you will need the following:
- Ubuntu Server Latest
- A terminal/console window
- sudo privileges
Step 1: Install Dependencies
To install OSRM on Ubuntu Server, you need to install several dependencies first. Open the console and type the following command:
sudo apt install build-essential git cmake pkg-config \
libbz2-dev libxml2-dev libzip-dev libboost-all-dev \
lua5.2 liblua5.2-dev libtbb-dev
This command installs build tools, libraries, and dependencies that are required by OSRM.
Step 2: Clone OSRM Repository
Next, you need to clone the OSRM repository using the following command:
git clone https://github.com/Project-OSRM/osrm-backend.git
This command fetches the source code from the OSRM backend repository.
Step 3: Build OSRM
Now you are ready to build OSRM. Navigate to the directory where you cloned the repository using the following command:
cd osrm-backend
Then, create a directory to store the build files:
mkdir -p build
cd build
Finally, run the following command to build OSRM:
cmake ..
cmake --build .
sudo cmake --build . --target install
This command runs the cmake build system, builds the OSRM backend and installs it on your system.
Step 4: Download OSM data
To use OSRM, you need OpenStreetMap data. You can download the data for a specific area from the OpenStreetMap website or use the following command to download the data for the entire planet:
wget http://planet.osm.org/pbf/planet-latest.osm.pbf
This command downloads the latest version of the planet.osm file in PBF format.
Step 5: Prepare OSM data
Now that you have downloaded the OSM data, you need to prepare it for use with OSRM. Run the following command to extract the data:
osrm-extract planet-latest.osm.pbf -p profile.lua
This command uses the profile.lua file to extract the routing data from the planet.osm.pbf file and create a .osrm file.
Next, you need to prepare the .osrm file for use with OSRM. Run the following command:
osrm-contract planet-latest.osrm
This command contracts the .osrm file and creates a .osrm.hsgr file that can be used by OSRM.
Step 6: Start OSRM
You are now ready to start OSRM with the following command:
osrm-routed planet-latest.osrm
This command starts the OSRM backend server and loads the planet-latest.osrm file. You should see a message similar to the following:
Listening on: http://0.0.0.0:5000
This indicates that the server is running and ready to receive requests.
Step 7: Test OSRM
To test OSRM, open a web browser and enter the following URL:
http://localhost:5000/route/v1/driving/<longitude>,<latitude>;<longitude>,<latitude>?steps=true
Replace <longitude> and <latitude> with the coordinates of two points. For example:
http://localhost:5000/route/v1/driving/13.388860,52.517037;13.397634,52.529407?steps=true
This URL should return a JSON response containing the shortest/fastest route between the two points.
You have successfully installed and tested OSRM on Ubuntu Server. Congratulations!