# unable to build voxl-tflite-server in voxl-cross

Source: https://forum.modalai.com/topic/4578/unable-to-build-voxl-tflite-server-in-voxl-cross
Category: General Questions (https://forum.modalai.com/category/2/general-questions)
Posted: 2025-07-09 00:28:43 UTC by paul.foley
Replies: 2 · Views: 608

## paul.foley · 2025-07-09 00:28:43 UTC

Hello,
I'm trying to build voxl-tflite-server in voxl cross. Below is my setup:

* voxl-cross:V4.0

* voxl-tflite-server 
  * cloned repo at this commit https://gitlab.com/voxl-public/voxl-sdk/services/voxl-tflite-server/-/commit/adbed8cd3fc7c08956a1a1e0759f344bc0285054

Host system: 
* OS: Red Hat Enterprise Linux 9.6 (Plow)
* Docker: 
> docker version 
Client: Docker Engine - Community
 Version:           28.3.1
 API version:       1.51
 Go version:        go1.24.4
 Git commit:        38b7060
 Built:             Wed Jul  2 20:58:10 2025
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          28.3.1
  API version:      1.51 (minimum version 1.24)
  Go version:       go1.24.4
  Git commit:       5beb93d
  Built:            Wed Jul  2 20:56:24 2025
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.7.27
  GitCommit:        05044ec0a9a75232cad458027ca83437aae3f4da
 runc:
  Version:          1.2.5
  GitCommit:        v1.2.5-0-g59923ef
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

I followed the instructions in voxl-tflite-server/README.md. I'm able to launch voxl-cross with the voxl-tflite-server repo directory mounted in the container. I ran the following command and got the following results. 

```
/home/root# ./install_build_deps.sh qrb5165 dev
using qrb5165 dev debian repo
Ign:1 http://voxl-packages.modalai.com ./dists/qrb5165/dev/binary-arm64/ InRelease
Ign:2 http://voxl-packages.modalai.com ./dists/qrb5165/dev/binary-arm64/ Release
Get:3 http://voxl-packages.modalai.com ./dists/qrb5165/dev/binary-arm64/ Packages [25.4 kB]
Fetched 25.4 kB in 1s (46.8 kB/s)    
Reading package lists... Done
installing: 
libmodal-pipe
libmodal-json
voxl-opencv
qrb5165-tflite
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  libmodal-json:arm64 libmodal-pipe:arm64 qrb5165-tflite:arm64 voxl-opencv:arm64
0 upgraded, 4 newly installed, 0 to remove and 2 not upgraded.
Need to get 24.8 MB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 http://voxl-packages.modalai.com ./dists/qrb5165/dev/binary-arm64/ libmodal-json 0.4.7-202505011742 [46.9 kB]
Get:2 http://voxl-packages.modalai.com ./dists/qrb5165/dev/binary-arm64/ libmodal-pipe 2.13.4-202507031002 [118 kB]
Get:3 http://voxl-packages.modalai.com ./dists/qrb5165/dev/binary-arm64/ qrb5165-tflite 2.8.0-2-202210071637 [11.0 MB]
Get:4 http://voxl-packages.modalai.com ./dists/qrb5165/dev/binary-arm64/ voxl-opencv 4.5.5-3-202504301748 [13.6 MB]
Fetched 24.8 MB in 4s (6792 kB/s)            
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76, <> line 4.)
debconf: falling back to frontend: Readline
Selecting previously unselected package libmodal-json:arm64.
(Reading database ... 31293 files and directories currently installed.)
Preparing to unpack .../libmodal-json_0.4.7-202505011742_arm64.deb ...
Unpacking libmodal-json:arm64 (0.4.7-202505011742) ...
Selecting previously unselected package libmodal-pipe:arm64.
Preparing to unpack .../libmodal-pipe_2.13.4-202507031002_arm64.deb ...
Unpacking libmodal-pipe:arm64 (2.13.4-202507031002) ...
Selecting previously unselected package qrb5165-tflite:arm64.
Preparing to unpack .../qrb5165-tflite_2.8.0-2-202210071637_arm64.deb ...
Unpacking qrb5165-tflite:arm64 (2.8.0-2-202210071637) ...
Selecting previously unselected package voxl-opencv:arm64.
Preparing to unpack .../voxl-opencv_4.5.5-3-202504301748_arm64.deb ...
Unpacking voxl-opencv:arm64 (4.5.5-3-202504301748) ...
Setting up libmodal-json:arm64 (0.4.7-202505011742) ...
Setting up qrb5165-tflite:arm64 (2.8.0-2-202210071637) ...
Setting up voxl-opencv:arm64 (4.5.5-3-202504301748) ...
Setting up libmodal-pipe:arm64 (2.13.4-202507031002) ...
Processing triggers for libc-bin (2.31-0ubuntu9.17) ...

Done installing dependencies
```

Installing dependencies seems to complete successfully. Trying to build results in the following. 

```
/home/root# ./build.sh qrb5165
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.10 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

WARN you're using a deprecated toolchain, please use the new toolchains:
WARN qrb5165_ubun1_18.04_aarch64.toolchain.cmake
WARN qrb5165_ubun2_20.04_aarch64.toolchain.cmake
-- ---------------------------------------------------------
-- Using voxl-cross 64-bit toolchain for QRB5165 ubun1 18.04
-- C Compiler     : /usr/bin/aarch64-linux-gnu-gcc-10
-- C++ Compiler   : /usr/bin/aarch64-linux-gnu-g++-10
-- Sysroot        : /opt/sysroots/qrb5165_1
-- C flags        : -idirafter /usr/include -march=armv8.2-a
-- CXX flags      : -idirafter /usr/include -march=armv8.2-a
-- EXE Link Flags : -L/opt/sysroots/qrb5165_1/usr/lib/aarch64-linux-gnu -L/opt/sysroots/qrb5165_1/lib -L/opt/sysroots/qrb5165_1/usr/lib -L/usr/lib64 -L/usr/lib
-- SO Link Flags  : -L/opt/sysroots/qrb5165_1/usr/lib/aarch64-linux-gnu -L/opt/sysroots/qrb5165_1/lib -L/opt/sysroots/qrb5165_1/usr/lib -L/usr/lib64 -L/usr/lib
WARN you're using a deprecated toolchain, please use the new toolchains:
WARN qrb5165_ubun1_18.04_aarch64.toolchain.cmake
WARN qrb5165_ubun2_20.04_aarch64.toolchain.cmake
-- The C compiler identification is GNU 10.5.0
-- The CXX compiler identification is GNU 10.5.0
-- Detecting C compiler ABI info
WARN you're using a deprecated toolchain, please use the new toolchains:
WARN qrb5165_ubun1_18.04_aarch64.toolchain.cmake
WARN qrb5165_ubun2_20.04_aarch64.toolchain.cmake
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/aarch64-linux-gnu-gcc-10 - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
WARN you're using a deprecated toolchain, please use the new toolchains:
WARN qrb5165_ubun1_18.04_aarch64.toolchain.cmake
WARN qrb5165_ubun2_20.04_aarch64.toolchain.cmake
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/aarch64-linux-gnu-g++-10 - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Deprecation Warning at src/CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.10 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- Configuring done (1.2s)
-- Generating done (0.1s)
-- Build files have been written to: /home/root/build
[  6%] Building CXX object src/CMakeFiles/voxl-tflite-server.dir/config_file.cpp.o
In file included from /home/root/src/config_file.cpp:1:
/home/root/src/../include/config_file.h:37:10: fatal error: modal_json.h: No such file or directory
   37 | #include <modal_json.h>
      |          ^~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [src/CMakeFiles/voxl-tflite-server.dir/build.make:79: src/CMakeFiles/voxl-tflite-server.dir/config_file.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:106: src/CMakeFiles/voxl-tflite-server.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
```

Based on the warning about the deprecated toolchain, I updated TOOLCHAIN_QRB5165 in build.sh
```
TOOLCHAIN_QRB5165="/opt/cross_toolchain/qrb5165_ubun1_18.04_aarch64.toolchain.cmake"
```

I also tried 
```
TOOLCHAIN_QRB5165="/opt/cross_toolchain/qrb5165_ubun2_20.04_aarch64.toolchain.cmake"
```

That got rid of the warnings but I still got the error about 
```
/home/root/src/../include/config_file.h:37:10: fatal error: modal_json.h: No such file or directory
   37 | #include <modal_json.h>
      |          ^~~~~~~~~~~~~~
```

I verified that modal_json.h is in /usr/include 
```
/home/root# ls -l  /usr/include/modal_json.h 
-rw-r--r--. 1 root root 15619 May  2 00:42 /usr/include/modal_json.h
```

I modified voxl-tflite-server/src/CMakeLists.txt to explicitly include /usr/include but that didn't help. 
```
include_directories(
    /usr/include/
    ../include/
    ..include/model_helper/
```
 
I then created /tmp/include as a softlink to /usr/include 
```
root@artb-vm9-dev11:/tmp# ls -l
total 0
drwxr-xr-x. 2 root root  6 Jul  8 20:16 bionic-pkgs
lrwxrwxrwx. 1 root root 13 Jul  9 00:17 include -> /usr/include/
```

I modified voxl-tflite-server/src/CMakeLists.txt to explicitly include /tmp/include and that fixed the compilation error and everything compiled. . 
```
include_directories(
    /tmp/include/
    ../include/
    ..include/model_helper/
```

However, then it failed when linking. 
```
[ 73%] Building CXX object src/CMakeFiles/voxl-tflite-server.dir/model_helper/yolov5_model_helper.cpp.o
[ 80%] Building CXX object src/CMakeFiles/voxl-tflite-server.dir/model_helper/yolov8_model_helper.cpp.o
[ 86%] Building C object src/CMakeFiles/voxl-tflite-server.dir/resize.c.o
[ 93%] Building CXX object src/CMakeFiles/voxl-tflite-server.dir/utils.cpp.o
[100%] Linking CXX executable voxl-tflite-server
/usr/lib/gcc-cross/aarch64-linux-gnu/10/../../../../aarch64-linux-gnu/bin/ld: cannot find -lsync
/usr/lib/gcc-cross/aarch64-linux-gnu/10/../../../../aarch64-linux-gnu/bin/ld: cannot find -lsync
collect2: error: ld returned 1 exit status
make[2]: *** [src/CMakeFiles/voxl-tflite-server.dir/build.make:308: src/voxl-tflite-server] Error 1
make[1]: *** [CMakeFiles/Makefile2:106: src/CMakeFiles/voxl-tflite-server.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
```

I could try installing the missing sync library but based on the prior issues I encountered it seems like maybe I need to use different versions of voxl-cross and voxl-tflite-server. Ultimately I'm targeting a Starling 2 Max. Here is the configuration for that: 
```
voxl2:/$ voxl-version 
--------------------------------------------------------------------------------
system-image: 1.8.02-M0054-14.1a-perf
kernel:       #1 SMP PREEMPT Mon Nov 11 22:59:41 UTC 2024 4.19.125
--------------------------------------------------------------------------------
hw platform:  M0054
mach.var:     1.2.1
--------------------------------------------------------------------------------
voxl-suite:   1.4.1
--------------------------------------------------------------------------------
Packages:
Repo:  http://voxl-packages.modalai.com/ ./dists/qrb5165/sdk-1.4/binary-arm64/
Last Updated: 2023-03-02 12:58:40
WARNING: repo file has changed since last update,
        packages may have originated from a different repo
List:
kernel-module-voxl-fsync-mod-4.19.125     1.0-r0
kernel-module-voxl-gpio-mod-4.19.125      1.0-r0
kernel-module-voxl-platform-mod-4.19.125  1.0-r0
libfc-sensor                              1.0.7
libmodal-cv                               0.5.16
libmodal-exposure                         0.1.3
libmodal-journal                          0.2.2
libmodal-json                             0.4.3
libmodal-pipe                             2.10.6
libqrb5165-io                             0.4.9
libvoxl-cci-direct                        0.2.5
libvoxl-cutils                            0.1.1
modalai-slpi                              1.1.19
mv-voxl                                   0.1-r0
qrb5165-bind                              0.1-r0
qrb5165-dfs-server                        0.2.0
qrb5165-imu-server                        1.1.2
qrb5165-rangefinder-server                0.1.4
qrb5165-slpi-test-sig                     01-r0
qrb5165-system-tweaks                     0.3.4
qrb5165-tflite                            2.8.0-2
voxl-bind-spektrum                        0.1.1
voxl-camera-calibration                   0.5.9
voxl-camera-server                        2.1.1
voxl-ceres-solver                         2:1.14.0-10
voxl-configurator                         0.9.7
voxl-cpu-monitor                          0.5.3
voxl-docker-support                       1.3.1
voxl-elrs                                 0.4.1
voxl-esc                                  1.5.1
voxl-feature-tracker                      0.5.2
voxl-flow-server                          0.3.6
voxl-fsync-mod                            1.0-r0
voxl-gphoto2-server                       0.0.10
voxl-gpio-mod                             1.0-r0
voxl-io-server                            0.0.4
voxl-jpeg-turbo                           2.1.3-5
voxl-lepton-server                        1.3.3
voxl-lepton-tracker                       0.0.4
voxl-libgphoto2                           0.0.4
voxl-libuvc                               1.0.7
voxl-logger                               0.4.9
voxl-mavcam-manager                       0.5.7
voxl-mavlink                              0.1.1
voxl-mavlink-server                       1.4.4
voxl-modem                                1.1.5
voxl-mongoose                             7.7.0-1
voxl-mpa-to-ros                           0.3.9
voxl-mpa-tools                            1.3.7
voxl-open-vins                            0.4.16
voxl-open-vins-server                     0.3.0
voxl-opencv                               4.5.5-2
voxl-osd                                  0.1.1
voxl-platform-mod                         1.0-r0
voxl-portal                               0.7.5
voxl-px4                                  1.14.0-2.0.94
voxl-px4-imu-server                       0.1.2
voxl-px4-params                           0.6.3
voxl-qvio-server                          1.1.1
voxl-remote-id                            0.0.9
voxl-reset-slpi                           0.0.1
voxl-state-estimator                      0.0.4
voxl-streamer                             0.7.5
voxl-suite                                1.4.1
voxl-tag-detector                         0.0.4
voxl-tflite-server                        0.3.9
voxl-utils                                1.4.4
voxl-uvc-server                           0.1.7
voxl-vision-hub                           1.8.17
voxl-vtx                                  1.1.8
voxl2-io                                  0.0.3
voxl2-system-image                        1.8.02-r0
voxl2-wlan                                1.0-r0
--------------------------------------------------------------------------------
```

Any guidance would be greatly appreciated. 

Thank you, 
Paul

## Reply by tom (ModalAI staff) · 2025-07-09 01:26:22 UTC

@paul-foley See here: https://forum.modalai.com/post/22907

## Reply by paul.foley · 2025-07-11 00:33:11 UTC (in reply to tom)

@tom that worked, thank you!
