Skip to content

Instantly share code, notes, and snippets.

@cardboardcode
Last active August 10, 2025 11:33
Show Gist options
  • Select an option

  • Save cardboardcode/c478ddd2558fe5d00453443b74409902 to your computer and use it in GitHub Desktop.

Select an option

Save cardboardcode/c478ddd2558fe5d00453443b74409902 to your computer and use it in GitHub Desktop.
For People In A Hurry: Access libvda5050pp API Documentation

What Is This?

This document contains quick and easy steps to compile and access the libvda5050pp API documentation.

The alternative would be to manually resolve any potential environment dependencies when setting up libvda5050pp on your workstation and dig through obscure document on the specific way to compile the library such it has Code Documentations.

A Dockerfile is provided to help circumvent any environment dependency conflict and show a verified manner of setting up libvda5050pp.

Instructions 📘

  1. Download the following Dockerfile below:
wget https://gist.github.com/cardboardcode/c478ddd2558fe5d00453443b74409902/raw/ef8541eca95fc0b9cb2559702a421d56fa0132d0/Dockerfile
  1. Build the docker image:
docker build -t libvda5050pp:latest .
  1. Generate the API documentations:
docker run --rm -it \
    --name libvda5050pp_c \
    --network host \
libvda5050pp:latest bash \
-c "cd build && mkdocs serve"
  1. Access the API documentation at http://127.0.0.1:8000/

Verify ✔️

You should see something similar to what is below:

image
FROM ubuntu:22.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
cmake \
git \
wget \
mosquitto \
libssl-dev \
ca-certificates \
mosquitto-clients \
python3-pip \
doxygen \
&& pip install mkdocs mkdocs-material
# Build and install Eclipse Paho MQTT C
RUN git clone --depth 1 https://github.com/eclipse/paho.mqtt.c.git && \
cd paho.mqtt.c && \
cmake -Bbuild -H. -DPAHO_BUILD_STATIC=FALSE -DPAHO_BUILD_SHARED=TRUE -DPAHO_WITH_SSL=TRUE && \
cmake --build build --target install && \
ldconfig && \
cd .. && rm -rf paho.mqtt.c
# Build and install Eclipse Paho MQTT C++
RUN git clone --depth 1 https://github.com/eclipse/paho.mqtt.cpp.git && \
cd paho.mqtt.cpp && \
cmake -Bbuild -H. -DPAHO_BUILD_STATIC=FALSE -DPAHO_BUILD_SHARED=TRUE -DPAHO_WITH_SSL=TRUE && \
cmake --build build --target install && \
ldconfig && \
cd .. && rm -rf paho.mqtt.cpp
# Clone libVDA5050++, build it with examples
WORKDIR /opt/libvda
RUN git clone https://git.openlogisticsfoundation.org/silicon-economy/libraries/vda5050/libvda5050pp.git --branch main --single-branch --depth 1
RUN cd libvda5050pp && cmake -S . -B build -DLIBVDA5050PP_BUILD_DOCS=ON \
&& cmake --build build --target mkdocs
# Clean up
RUN rm -rf /var/lib/apt/lists/*
WORKDIR /opt/libvda/libvda5050pp
CMD ['bash']
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment