@Moderator
Hi,
I am trying to build voxl-px4 repo.
https://gitlab.com/voxl-public/voxl-sdk/services/voxl-px4.git
For build setup,
I installed voxl-docker and voxl-cross as per - https://docs.modalai.com/voxl-docker-and-cross-installation/
I referred for px4 docker build image, https://gitlab.com/voxl-public/rb5-flight/rb5-flight-px4-build-docker.
according to readme.
I tried to install hexagon SDK 4.1.0.4, using QPM3.
But getting a post script error, every time, I tried with Ubuntu 20.04 and 22.04 also.
Qualcomm(R) Hexagon™ SDK 4.x
Version 4.1.0.4 for Linux
Tool Name: HexagonSDK4.x
Install Summary
Install failed
[Info] : Config File Present
[Info] : Step 1 of 7: Checking environment
[Info] : Step 2 of 7: Checking previous version
[Info] : Step 3 of 7: Checking dependencies
[Info] : Step 4 of 7: Preparing system
[Info] : Step 5 of 7: Extracting files
[Info] : Step 6 of 7: Configuring system
[Error] : Post-install step failed.
Please reach out to the owner of Hexagon SDK 4.x for more assistance.
[Error] Install failed for Qualcomm(R) Hexagon™ SDK 4.x and version 4.1.0.4
But as per thread - https://forum.modalai.com/topic/3079/hexagonsdk4-1-0-4-installation-fails-due-to-erro-on-license-verification?_=1738850535021
I ignored the error and tar it and placed it in rb5-flight-px4-build-docker
and ran setup.sh and build.sh.
it generated the docker image rb5-flight-px4-build-docker
So. currently this much images I have:
ravi@ravipc:~/Desktop/modalai/build_setup/voxl-docker-cross$ voxl-docker -l
REPOSITORY TAG IMAGE ID CREATED SIZE
rb5-flight-px4-build-docker latest 54ba544d5242 5 minutes ago 8.09GB
rb5-flight-px4-build-docker v1.5 54ba544d5242 5 minutes ago 8.09GB
base-px4-build-docker v1.4 3095b633bdc3 21 months ago 2.03GB
voxl-cross V2.5 63eb2f07ad21 2 years ago 1.55GB
voxl-cross latest 63eb2f07ad21 2 years ago 1.55GB
ravi@ravipc:~/Desktop/modalai/build_setup/voxl-docker-cross$
Then I tried to build and got error in building voxl-px4 - https://gitlab.com/voxl-public/voxl-sdk/services/voxl-px4
its log is attached.
root@bf9bfdd9f0e3:/usr/local/workspace# ./build.sh
*** Starting build ***
Setting up the Hexagon SDK environment locally
HEXAGON_SDK_ROOT is : /home/4.1.0.4
Setting up the QAIC binary for the platform
make: Entering directory '/home/4.1.0.4/ipc/fastrpc/qaic'
make: 'bin/qaic' is up to date.
make: Leaving directory '/home/4.1.0.4/ipc/fastrpc/qaic'
Could not find Androd ndk at /home/4.1.0.4/tools/android-ndk-r19c
Please refer to /home/4.1.0.4/docs/tools/setup.html for installing the missed components
*** Starting dependencies build ***
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 9.4.0
-- Check for working C compiler: /home/4.1.0.4/tools/linaro64/bin/aarch64-linux-gnu-gcc
-- Check for working C compiler: /home/4.1.0.4/tools/linaro64/bin/aarch64-linux-gnu-gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/workspace/px4-firmware/boards/modalai/voxl2/libfc-sensor-api/build
Scanning dependencies of target fc_sensor
[ 50%] Building C object CMakeFiles/fc_sensor.dir/src/fc_sensor_stub.c.o
[100%] Linking C shared library libfc_sensor.so
[100%] Built target fc_sensor
*** End of dependencies build ***
*** Starting apps processor build ***
-- PX4 version: v1.14.0-2.0.94-dev (1.14.0)
-- Found PythonInterp: /usr/bin/python3 (found suitable version "3.8.10", minimum required is "3")
-- PX4 config file: /usr/local/workspace/px4-firmware/boards/modalai/voxl2/default.px4board
-- PLATFORM posix
-- LINUX_TARGET y
-- TOOLCHAIN aarch64-linux-gnu
-- ROMFSROOT px4fmu_common
-- ROOTFSDIR /data/px4
-- PX4 config: modalai_voxl2_default
-- PX4 platform: posix
-- PX4 lockstep: disabled
-- The CXX compiler identification is GNU 7.5.0
-- The C compiler identification is GNU 7.5.0
-- The ASM compiler identification is GNU
-- Found assembler: /home/4.1.0.4/tools/linaro64/bin/aarch64-linux-gnu-gcc
-- Check for working CXX compiler: /home/4.1.0.4/tools/linaro64/bin/aarch64-linux-gnu-g++
-- Check for working CXX compiler: /home/4.1.0.4/tools/linaro64/bin/aarch64-linux-gnu-g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Check for working C compiler: /home/4.1.0.4/tools/linaro64/bin/aarch64-linux-gnu-gcc
-- Check for working C compiler: /home/4.1.0.4/tools/linaro64/bin/aarch64-linux-gnu-gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- cmake build type: RelWithDebInfo
-- ccache enabled (export CCACHE_DISABLE=1 to disable)
-- Skipping pwm file path /usr/local/workspace/px4-firmware/src/drivers/linux_pwm_out/module.yaml for VOXL2
-- Skipping pwm file path /usr/local/workspace/px4-firmware/src/drivers/pca9685_pwm_out/module.yaml for VOXL2
-- Skipping pwm file path /usr/local/workspace/px4-firmware/src/drivers/pwm_out/module.yaml for VOXL2
-- Skipping pwm file path /usr/local/workspace/px4-firmware/src/modules/simulation/pwm_out_sim/module_hil.yaml for VOXL2
-- Skipping pwm file path /usr/local/workspace/px4-firmware/src/modules/simulation/pwm_out_sim/module_sim.yaml for VOXL2
-- ROMFS: ROMFS/px4fmu_common
Architecture: amd64
==> CPACK_INSTALL_PREFIX = @DEB_INSTALL_PREFIX@
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/workspace/px4-firmware/build/modalai_voxl2_default
[0/562] git submodule src/modules/microdds_client/Micro-XRCE-DDS-Client
[2/562] git submodule src/drivers/gps/devices
[4/562] git submodule src/modules/mavlink/mavlink
[259/562] Performing configure step for 'libmicroxrceddsclient_project'
-- libmicroxrceddsclient_project configure command succeeded. See also /usr/local/workspace/px4-firmware/build/modalai_voxl2_default/src/modules/microdds_client/src/libmicroxrceddsclient_project-stamp/libmicroxrceddsclient_project-configure-*.log
[416/562] Performing build step for 'libmicroxrceddsclient_project'
-- libmicroxrceddsclient_project build command succeeded. See also /usr/local/workspace/px4-firmware/build/modalai_voxl2_default/src/modules/microdds_client/src/libmicroxrceddsclient_project-stamp/libmicroxrceddsclient_project-build-*.log
[425/562] Performing install step for 'libmicroxrceddsclient_project'
-- libmicroxrceddsclient_project install command succeeded. See also /usr/local/workspace/px4-firmware/build/modalai_voxl2_default/src/modules/microdds_client/src/libmicroxrceddsclient_project-stamp/libmicroxrceddsclient_project-install-*.log
[562/562] Linking CXX executable bin/px4
/* Auto Magically Generated file */
/* Do not edit! */
#pragma once
#define PX4_GIT_VERSION_STR "5e6a8c257371b6c45e55662daac5fe9fbd08040b"
#define PX4_GIT_VERSION_BINARY 0x5e6a8c257371b6c4
#define PX4_GIT_TAG_STR "v1.14.0-2.0.94-dev-dirty"
#define PX4_GIT_BRANCH_NAME ""
#define PX4_GIT_OEM_VERSION_STR ""
#define PX4_GIT_TAG_OR_BRANCH_NAME "v1.14.0-2.0.94-dev-dirty" // special variable: git tag, release or master branch
#define MAVLINK_LIB_GIT_VERSION_STR "3ee5382d0c96134b0e1c250d8c2d54bfed0166fa"
#define MAVLINK_LIB_GIT_VERSION_BINARY 0x3ee5382d0c96134b
#define NUTTX_GIT_VERSION_STR "3f77354c0dc88793a47ff3b57595195ab45f7ba9"
#define NUTTX_GIT_VERSION_BINARY 0x3f77354c0dc88793
#define NUTTX_GIT_TAG_STR "v11.0.0"
*** End of apps processor build ***
*** Starting qurt slpi build ***
-- PX4 version: v1.14.0-2.0.94-dev (1.14.0)
-- Found PythonInterp: /usr/bin/python3 (found suitable version "3.8.10", minimum required is "3")
-- PX4 config file: /usr/local/workspace/px4-firmware/boards/modalai/voxl2-slpi/default.px4board
-- PLATFORM qurt
-- TOOLCHAIN qurt
-- ROMFSROOT px4fmu_common
-- PX4 config: modalai_voxl2-slpi_default
-- PX4 platform: qurt
-- The CXX compiler identification is Clang 10.0.0
-- The C compiler identification is Clang 10.0.0
-- The ASM compiler identification is unknown
-- Found assembler: /home/4.1.0.4/tools/HEXAGON_Tools/8.4.05/Tools/bin/hexagon-clang
-- Check for working CXX compiler: /home/4.1.0.4/tools/HEXAGON_Tools/8.4.05/Tools/bin/hexagon-clang++
-- Check for working CXX compiler: /home/4.1.0.4/tools/HEXAGON_Tools/8.4.05/Tools/bin/hexagon-clang++ -- broken
CMake Error at /usr/share/cmake-3.16/Modules/CMakeTestCXXCompiler.cmake:53 (message):
The C++ compiler
"/home/4.1.0.4/tools/HEXAGON_Tools/8.4.05/Tools/bin/hexagon-clang++"
is not able to compile a simple test program.
It fails with the following output:
Change Dir: /usr/local/workspace/px4-firmware/build/modalai_voxl2-slpi_default/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/ninja cmTC_7ce90 && [1/2] Building CXX object CMakeFiles/cmTC_7ce90.dir/testCXXCompiler.cxx.o
[2/2] Linking CXX executable cmTC_7ce90
FAILED: cmTC_7ce90
: && /home/4.1.0.4/tools/HEXAGON_Tools/8.4.05/Tools/bin/hexagon-clang++ -Wno-inconsistent-missing-override -DCONFIG_WCHAR_BUILTIN -D__CUSTOM_FILE_IO__ -mv66 -G0 -O3 -Wno-inconsistent-missing-override -DCONFIG_WCHAR_BUILTIN -D__CUSTOM_FILE_IO__ -mv66 -G0 -O3 -Wno-inconsistent-missing-override -DCONFIG_WCHAR_BUILTIN -D__CUSTOM_FILE_IO__ -mv66 -G0 -O3 -Wno-inconsistent-missing-override -DCONFIG_WCHAR_BUILTIN -D__CUSTOM_FILE_IO__ -mv66 -G0 -O3 -mv66 -mG0lib -G0 -fpic -shared -Wl,-Bsymbolic -Wl,--wrap=malloc -Wl,--wrap=calloc -Wl,--wrap=free -Wl,--wrap=realloc -Wl,--wrap=memalign -Wl,--wrap=__stack_chk_fail -Wl,/home/4.1.0.4/tools/HEXAGON_Tools/8.4.05/Tools/target/hexagon/lib/v66/G0/pic/libc++.a -lc -mv66 -mG0lib -G0 -fpic -shared -Wl,-Bsymbolic -Wl,--wrap=malloc -Wl,--wrap=calloc -Wl,--wrap=free -Wl,--wrap=realloc -Wl,--wrap=memalign -Wl,--wrap=__stack_chk_fail -Wl,/home/4.1.0.4/tools/HEXAGON_Tools/8.4.05/Tools/target/hexagon/lib/v66/G0/pic/libc++.a -lc CMakeFiles/cmTC_7ce90.dir/testCXXCompiler.cxx.o -o cmTC_7ce90 && :
hexagon-clang++: error: unable to execute command: Executable "hexagon-link" doesn't exist!
hexagon-clang++: error: hexagon-link command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
CMakeLists.txt:219 (project)
-- Configuring incomplete, errors occurred!
See also "/usr/local/workspace/px4-firmware/build/modalai_voxl2-slpi_default/CMakeFiles/CMakeOutput.log".
See also "/usr/local/workspace/px4-firmware/build/modalai_voxl2-slpi_default/CMakeFiles/CMakeError.log".
Error: /usr/local/workspace/px4-firmware/build/modalai_voxl2-slpi_default is not a directory
make: *** [Makefile:232: modalai_voxl2-slpi] Error 1
cat: build/modalai_voxl2-slpi_default/src/lib/version/build_git_version.h: No such file or directory
*** End of qurt slpi build ***
/usr/local/workspace
User ID is 1000
Group ID is 1000
*** End of build ***
root@bf9bfdd9f0e3:/usr/local/workspace#
Can you provide a solution? what am I missing and how to resolve the issue?