Cannot build voxl-mapper in voxl-cross docker image: fatal error: voxblox/Eigen/Core: No such file or directory
-
I intend to modify some codes in voxl-mapper and so would like to build it after the modification. I am building it following the instructions in the Build Instructions section in the voxl-mapper gitlab (i.e. in
voxl-crossdocker image).
Therefore,following the instructions in voxl-mapper gitlab, I execute the following:- Install the dependencies
using apq8096 sdk-0.8 repo Downloading http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64//Packages.gz. Updated source 'sdk-0.8'. installing: libmodal-json libvoxl-cutils voxl-ceres-solver voxl-nlopt voxl-mpa-tools libmodal-pipe voxl-voxblox Package libmodal-json (0.4.2) installed in root is up to date. Package libvoxl-cutils (0.1.1) installed in root is up to date. Package voxl-ceres-solver (1.14.0-9) installed in root is up to date. Package voxl-nlopt (2.5.0-4) installed in root is up to date. Package voxl-mpa-tools (0.7.3) installed in root is up to date. Package libmodal-pipe (2.4.4) installed in root is up to date. Package voxl-voxblox (1.1.2) installed in root is up to date. Done installing dependencies- Run the script for building
voxl-cross:~/voxl-mapper(master)$ ./build.sh apq8096 -- Configuring done -- Generating done -- Build files have been written to: /home/root/voxl-mapper/build64 Consolidate compiler generated dependencies of target mav_trajectory_generation [ 2%] Building CXX object server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/polynomial.cpp.o [ 5%] Building CXX object server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/rpoly_ak1.cpp.o [ 8%] Building CXX object server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/segment.cpp.o [ 11%] Building CXX object server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/trajectory_sampling.cpp.o [ 13%] Building CXX object server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/trajectory.cpp.o [ 16%] Building CXX object server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/vertex.cpp.o In file included from /home/root/voxl-mapper/server/mav_trajectory_generation/src/polynomial.cpp:20:0: /home/root/voxl-mapper/server/mav_trajectory_generation/include/mav_trajectory_generation/polynomial.h:24:30: fatal error: voxblox/Eigen/Core: No such file or directory #include <voxblox/Eigen/Core> ^ compilation terminated. In file included from /home/root/voxl-mapper/server/mav_trajectory_generation/include/mav_trajectory_generation/trajectory_sampling.h:24:0, from /home/root/voxl-mapper/server/mav_trajectory_generation/src/trajectory_sampling.cpp:21: /home/root/voxl-mapper/server/mav_comm/mav_msgs/include/mav_msgs/eigen_mav_msgs.h:24:30: fatal error: voxblox/Eigen/Core: No such file or directory #include <voxblox/Eigen/Core> ^ compilation terminated. In file included from /home/root/voxl-mapper/server/mav_trajectory_generation/src/segment.cpp:21:0: /home/root/voxl-mapper/server/mav_trajectory_generation/include/mav_trajectory_generation/segment.h:24:30: fatal error: voxblox/Eigen/Core: No such file or directory #include <voxblox/Eigen/Core> ^ compilation terminated. In file included from /home/root/voxl-mapper/server/mav_trajectory_generation/src/vertex.cpp:21:0: /home/root/voxl-mapper/server/mav_trajectory_generation/include/mav_trajectory_generation/vertex.h:24:30: fatal error: voxblox/Eigen/Core: No such file or directory #include <voxblox/Eigen/Core> ^ compilation terminated. server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/build.make:173: recipe for target 'server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/vertex.cpp.o' failed make[2]: *** [server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/vertex.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/build.make:159: recipe for target 'server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/trajectory_sampling.cpp.o' failed make[2]: *** [server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/trajectory_sampling.cpp.o] Error 1 server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/build.make:117: recipe for target 'server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/segment.cpp.o' failed make[2]: *** [server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/segment.cpp.o] Error 1 server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/build.make:89: recipe for target 'server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/polynomial.cpp.o' failed make[2]: *** [server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/polynomial.cpp.o] Error 1 In file included from /home/root/voxl-mapper/server/mav_trajectory_generation/include/mav_trajectory_generation/trajectory.h:25:0, from /home/root/voxl-mapper/server/mav_trajectory_generation/src/trajectory.cpp:21: /home/root/voxl-mapper/server/mav_trajectory_generation/include/mav_trajectory_generation/segment.h:24:30: fatal error: voxblox/Eigen/Core: No such file or directory #include <voxblox/Eigen/Core> ^ compilation terminated. In file included from /home/root/voxl-mapper/server/mav_trajectory_generation/src/rpoly_ak1.cpp:47:0: /home/root/voxl-mapper/server/mav_trajectory_generation/include/mav_trajectory_generation/rpoly_ak1.h:20:30: fatal error: voxblox/Eigen/Core: No such file or directory #include <voxblox/Eigen/Core> ^ compilation terminated. server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/build.make:145: recipe for target 'server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/trajectory.cpp.o' failed make[2]: *** [server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/trajectory.cpp.o] Error 1 server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/build.make:103: recipe for target 'server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/rpoly_ak1.cpp.o' failed make[2]: *** [server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/src/rpoly_ak1.cpp.o] Error 1 CMakeFiles/Makefile2:259: recipe for target 'server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/all' failed make[1]: *** [server/mav_trajectory_generation/CMakeFiles/mav_trajectory_generation.dir/all] Error 2 Makefile:135: recipe for target 'all' failed make: *** [all] Error 2It seems that the main issue here is
voxblox/Eigen/Core: No such file or directoryIn the first step, where I install all the dependencies, it seems voxblox package was installed. But still this error shows up.
As a reference,
voxl-voxblox - 1.0.4 - voxblox library apiseems to be installed.voxl-cross:~/voxl-mapper(master)$ opkg list apq8096-dfs-server - 0.3.0 - depth-from-stereo server for Modal Pipe Architecture apq8096-imu-server - 1.0.2 - VOXL IMU interface for Modal Pipe Architecture apq8096-libpng - 1.6.38-1 - 64-bit version of native libpng for voxl1 apq8096-rangefinder-server - 0.1.2 - publishes rangefinder data apq8096-system-tweaks - 0.1.2 - ModalAI common on-target utilities for VOXL apq8096-tflite - 2.2.3-4 - Tensorflow Lite Build For VOXL libapq8096-io - 0.5.8 - ModalAI library allowing apps processor access to accessory serial ports libmodal-cv - 0.1.0 - ModalAI CV library libmodal-exposure - 0.0.7 - ModalAI Auto Exposure Library libmodal-json - 0.4.2 - Helper library for handling JSON config files libmodal-pipe - 2.4.0 - Interface for services to communicate over posix named pipes libmodal-pipe - 2.4.4 librc-math - 1.1.8 - Math and Linear Algebra Routines for Robotics libvoxl-cutils - 0.1.1 - ModalAI's c utils mavlink-camera-manager - 0.1.0 - ModalAI implementation of the Mavlink camera protocol qualcomm-proprietary - 0.0.1 voxl-camera-calibration - 0.2.2 - On-board camera calibration for VOXL voxl-camera-server - 1.1.0 - publishes camera frames over named pipe interface voxl-ceres-solver - 1.14.0-7 - ceres-solver for voxl voxl-ceres-solver - 1.14.0-9 voxl-cpu-monitor - 0.2.6 - publishes CPU Data over MPA pipe and provides fan tools voxl-docker-support - 1.2.4 - tools to improve the usability of docker on VOXL voxl-gphoto2-server - 0.0.10 - Gstreamer-based application to pull raw video frames from PTP cameras voxl-jpeg-turbo - 2.1.3-4 - libjpeg_turbo build for voxl voxl-libgphoto2 - 0.0.4 - Library to control digital cameras over USB voxl-libuvc - 1.0.6 - cross-platform library for USB video devices voxl-logger - 0.3.2 - misc tools for modal pipe architecture voxl-mapper - 0.0.7 - voxl-mapper voxl-mavlink - 0.1.0 - mavlink headers voxl-mavlink-server - 0.1.3 - MPA interface for mavlink over UART or UDP voxl-modem - 0.16.0 - VOXL Modem Utils voxl-mongoose - 7.6.0 - mongoose build for voxl voxl-mpa-to-ros - 0.3.3 - ROSNode converting MPA pipes voxl-mpa-tools - 0.7.2 - misc tools for modal pipe architecture voxl-mpa-tools - 0.7.3 voxl-nlopt - 2.5.0-4 - nlopt voxl-opencv - 4.5.5-1 - opencv built for VOXL voxl-portal - 0.2.8 - Debug web interface for VOXL voxl-qvio-server - 0.7.1 - publishes QVIO data over named pipe interface voxl-streamer - 0.3.6 - Gstreamer-based application to handle RTSP streaming voxl-suite - 0.8.1 - voxl-suite for APQ8096 VOXL voxl-tag-detector - 0.0.4 - Detect apriltags for MPA voxl-tflite-server - 0.2.7 - client of voxl-camera-server that does deep learning voxl-utils - 1.1.4 - ModalAI common on-target utilities for VOXL voxl-uvc-server - 0.1.1 - libuvc application to handle UVC camera frame output to MPA voxl-vision-px4 - 1.2.0 - Interface between VOXL's computer vision services and PX4 voxl-voxblox - 1.0.4 - voxblox library api voxl-voxblox - 1.1.2 voxl-vpn - 0.0.6 - ModalNet VPN software -
Heey @ahmed-mustahid,
Looks like you have some dependency version issues. The voxl-voxblox version you are using is NOT from the sdk-0.8 release, it is a much newer version from our dev repos. See the versions that get grabbed here:
voxl-cross:~(master)(0.0.7)$ ./install_build_deps.sh apq8096 sdk-0.8 using apq8096 sdk-0.8 repo Downloading http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64//Packages.gz. Updated source 'sdk-0.8'. installing: libmodal-json libvoxl-cutils voxl-ceres-solver voxl-nlopt voxl-mpa-tools libmodal-pipe voxl-voxblox Installing libmodal-json (0.4.2) on root. Downloading http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64//libmodal-json_0.4.2.ipk. Configuring libmodal-json. Installing libvoxl-cutils (0.1.1) on root. Downloading http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64//libvoxl-cutils_0.1.1.ipk. Configuring libvoxl-cutils. Installing voxl-ceres-solver (1.14.0) on root. Downloading http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64//voxl-ceres-solver_1.14.0-7.ipk. Configuring voxl-ceres-solver. Installing voxl-nlopt (2.5.0) on root. Downloading http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64//voxl-nlopt_2.5.0-4.ipk. Configuring voxl-nlopt. Done installing nlopt Installing voxl-mpa-tools (0.7.2) on root. Downloading http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64//voxl-mpa-tools_0.7.2.ipk. Configuring voxl-mpa-tools. Installing libmodal-pipe (2.4.0) on root. Downloading http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64//libmodal-pipe_2.4.0.ipk. Configuring libmodal-pipe. Installing voxl-voxblox (1.0.4) on root. Downloading http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64//voxl-voxblox_1.0.4.ipk. Configuring voxl-voxblox. Done installing voxblox Done installing dependenciesTry rebuilding with a fresh docker env and installing all dependencies from either the
stableorsdk-0.8repos. -
Also,
opkg listshows all available versions of packages, so to see what you are actually using you can runopkg list-installed
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login