Files
MicrOBU/microbu-esp32c5/external/vanetza-idf/docs/recipes/arm64-build.md
T
Ashin Walpola 0e9525162d Keep the colleague's microbu-esp32c5 tree in this repository
obu-firmware builds against vanetza-idf from microbu-esp32c5/external, but
that tree was gitignored, so a clone of this repository could not build the
firmware it ships. It is now committed here as ordinary files in its own
folder, microbu-esp32c5/: the colleague's commit cf4b99f plus the V2X2MAP
bridge's signature verification (--trust) used on the bench. Nothing is
fetched from or pushed to the colleague's repository; this repository and
its remotes carry everything. The folder's own .gitignore keeps build output,
downloaded components and private key material out, as it did there; the
committed file set is identical to that repository's tracked files.

The ESP32-C5 is still flashed from obu-firmware/, which only takes
vanetza-idf from microbu-esp32c5/, so the two stay separate folders.
FLASHING.md says how to take a newer version of the colleague's tree (copy
it over the folder, rebuild, test, commit).
2026-09-23 17:46:40 +02:00

1.4 KiB

Title: Building for generic ARM64 device

Building Vanetza for generic ARM64 device

This document describes building Vanetza for arm64 architecture. Steps for building Vanetza for arm64 are very similar to build for Cohda MK5 devices (you can see steps in the building for Cohda MK5 document).

Cross-compiler

You should have GNU C/C++ cross-compiler for the arm64 architecture installed. For Debian-based distros, this can be installed by command sudo apt install g++-aarch64-linux-gnu.

Vanetza build dependencies

Please see this document about cross-compiling Vanetza's dependencies.

Compile Vanetza

We assume you have copy of the Vanetza repository in your home directory at $HOME. Create a build directory and tell CMake to use the cross-compiler installed on your machine and to look up additional dependencies in vanetza-deps:

:::shell
mkdir vanetza/vanetza-build
cd vanetza/vanetza-build
cmake .. \
    -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-ARM64.cmake \
    -DCMAKE_FIND_ROOT_PATH=$HOME/vanetza-deps \
    -DCMAKE_INSTALL_RPATH=\$ORIGIN/../lib \
    -DCMAKE_INSTALL_PREFIX=$HOME/vanetza-dist \
    -DBUILD_SOCKTAP=ON
make

This builds the Vanetza libraries and socktap example as well. When you do make install, binaries are copied to $HOME/vanetza-dist. You can copy the binary with libraries to the device now.