diff --git a/Compiling-OSRM-Library.md b/Compiling-OSRM-Library.md index 2ff82ed..f2bc69c 100644 --- a/Compiling-OSRM-Library.md +++ b/Compiling-OSRM-Library.md @@ -1,3 +1,37 @@ Follow instructions in this link [DeepWiki OSRM-Backend | Building From Source](https://deepwiki.com/Project-OSRM/osrm-backend/1.3-building-from-source) -After following the instructions you will get a folder named OSRM contains binary files: `osrm-components`, +After compiling OSRM on Windows, the resulting directory structure at C:\OSRM follows the standard Unix-like installation layout (common for CMake-based projects). Here's documentation-ready text you can use: +Compilation Output +After a successful build and installation, OSRM is organized under a single root directory (C:\OSRM by default) with the following structure: + +#### `bin\` +Contains the compiled executable files and any required runtime libraries (DLLs). + - Routing engine: osrm-routed.exe + - Preprocessing tools: osrm-extract.exe, osrm-contract.exe, osrm-partition.exe, osrm-customize.exe + - Utility: osrm-components.exe + - Dependencies: Required DLLs such as Boost, Intel TBB, and other linked libraries + +#### `include\` +Contains the C++ header files (.h / .hpp) that define OSRM's public API. + + - Use these headers when building custom applications that link against the OSRM library + - Includes the osrm/ subdirectory with classes like EngineConfig, OSRM, TableParameters, etc. + +#### `lib\` +Contains static and import libraries (.lib files) used at compile time. + + - Link against these when integrating OSRM as a library into your own C++ projects + - May also contain CMake configuration files (e.g., osrmConfig.cmake) to help other projects find OSRM via find_package() + +#### `share\` +Contains architecture-independent data files and resources. + + - Routing profiles: Lua scripts such as car.lua, foot.lua, bicycle.lua + - CMake helpers: Additional build system support files + - Documentation / examples: Sample configurations or extra data required by the engine + +#### Usage Notes + + - To run OSRM commands from any Command Prompt, add C:\OSRM\bin to your system's PATH environment variable. + - The include and lib folders are only needed if you plan to develop applications that use OSRM as a linked library. + - The share folder typically contains the Lua profiles required during the osrm-extract preprocessing stage. \ No newline at end of file