ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Voxl-hexagon build.sh

    Ask your questions right here!
    2
    6
    377
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • SHofmeesterS
      SHofmeester
      last edited by

      Hi,

      I am at step 4 of "Build instructions" (https://gitlab.com/voxl-public/core-libs/libvoxl_io), where I need to use "./build.sh" in voxl-hexagon, but the following error is raised:

      Screenshot from 2022-03-15 12-22-35.jpeg

      In step 3 of "Build instructions", it says to use "-p" after "voxl-docker -i voxl-hexagon", when opening voxl-hexagon. But when I type "voxl-docker -h" it isn't an option, so I opened voxl-hexagon without the "-p". Step 3 says to update the latest version, but I followed the steps from the Modalai docs and also downloaded it from the git-repository, but still no "-p".

      Does it have to do with the "-p" or lies the problem elsewhere?

      Thanks in advance

      Eric KatzfeyE 2 Replies Last reply Reply Quote 0
      • Eric KatzfeyE
        Eric Katzfey ModalAI Team @SHofmeester
        last edited by

        @SHofmeester I'll try this on my machine but the error it is showing is related to a missing file. That file should be there if the submodules were updated properly. Step 2 does this: git submodule update --init --recursive. What happened when you ran that step? What do you get if you run this command in the libvoxl_io top level directory?

        libvoxl_io$ find . -name mavlink.h
        ./lib/c_library_v2/standard/mavlink.h
        ./lib/c_library_v2/ASLUAV/mavlink.h
        ./lib/c_library_v2/matrixpilot/mavlink.h
        ./lib/c_library_v2/icarous/mavlink.h
        ./lib/c_library_v2/autoquad/mavlink.h
        ./lib/c_library_v2/ardupilotmega/mavlink.h
        ./lib/c_library_v2/slugs/mavlink.h
        ./lib/c_library_v2/test/mavlink.h
        ./lib/c_library_v2/minimal/mavlink.h
        ./lib/c_library_v2/uAvionix/mavlink.h
        ./lib/c_library_v2/common/mavlink.h
        
        1 Reply Last reply Reply Quote 0
        • Eric KatzfeyE
          Eric Katzfey ModalAI Team @SHofmeester
          last edited by

          @SHofmeester I just tried the build with V1.1 of voxl-hexagon and it all worked for me. But you are correct, the -p option is not needed. We'll update the documentation. And after I downloaded V1.1 of voxl-hexagon from downloads.modalai.com I loaded it with docker load < ~/Downloads/voxl-hexagon_v1.1.tgz and then ran it with voxl-docker -i voxl-hexagon:V1.1.

          1 Reply Last reply Reply Quote 0
          • SHofmeesterS
            SHofmeester
            last edited by

            @Eric-Katzfey Thank you for your reply.

            I managed to get the same "find" results as you, by properly cloning the repository and using "git submodule update --init --recursive".

            When I try to run build.sh in ~/git/libapq8096-io, the following error appears:
            0fc58efa-db6f-4565-8542-a65cf900f500-image.png

            Eric KatzfeyE 1 Reply Last reply Reply Quote 0
            • Eric KatzfeyE
              Eric Katzfey ModalAI Team @SHofmeester
              last edited by

              @SHofmeester Something got corrupted. That can happen when you build, then make some changes to the structure of the build environment, then try to build again. Just delete everything, and start from scratch. Looks like we also just moved and changed the name of the repository which probably contributed to the error you saw. Here is the full output from what I just described:

              modalai@modalai-XPS-15-9570:~/development/modalai$ git clone git@gitlab.com:voxl-public/voxl-sdk/core-libs/libapq8096-io.git
              Cloning into 'libapq8096-io'...
              remote: Enumerating objects: 893, done.
              remote: Counting objects: 100% (152/152), done.
              remote: Compressing objects: 100% (76/76), done.
              remote: Total 893 (delta 95), reused 125 (delta 74), pack-reused 741
              Receiving objects: 100% (893/893), 294.66 KiB | 1.94 MiB/s, done.
              Resolving deltas: 100% (499/499), done.
              modalai@modalai-XPS-15-9570:~/development/modalai$ cd libapq8096-io/
              modalai@modalai-XPS-15-9570:~/development/modalai/libapq8096-io$ ls
              build.sh   clean.sh            ipk  LICENSE          README.md
              CHANGELOG  install_on_voxl.sh  lib  make_package.sh
              modalai@modalai-XPS-15-9570:~/development/modalai/libapq8096-io$ git submodule update --init --recursive
              Submodule 'lib/c_library_v2' (https://github.com/mavlink/c_library_v2.git) registered for path 'lib/c_library_v2'
              Cloning into '/home/modalai/development/modalai/libapq8096-io/lib/c_library_v2'...
              Submodule path 'lib/c_library_v2': checked out '99a977433a13705cd0624f8ff3b5f5210d526ba9'
              modalai@modalai-XPS-15-9570:~/development/modalai/libapq8096-io$ voxl-docker -i voxl-hexagon:V1.1
              launching image: voxl-hexagon:V1.1 with the following command:
              docker run --rm -it --net=host --privileged -w /home/modalai --volume=/dev/bus/usb:/dev/bus/usb -e LOCAL_USER_ID=0 -e LOCAL_USER_NAME=root -e LOCAL_GID=0 -v /home/modalai/development/modalai/libapq8096-io:/home/root:rw -w /home/root voxl-hexagon:V1.1 /bin/bash -l
              
              voxl-hexagon:~$ ./build.sh
              CMake Deprecation Warning at /usr/share/cmake-3.10/Modules/CMakeForceCompiler.cmake:69 (message):
                The CMAKE_FORCE_C_COMPILER macro is deprecated.  Instead just set
                CMAKE_C_COMPILER and allow CMake to identify the compiler.
              Call Stack (most recent call first):
                /opt/cmake_hexagon/toolchain/Toolchain-arm-linux-gnueabi.cmake:98 (cmake_force_c_compiler)
                /usr/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake:94 (include)
                CMakeLists.txt
              
              
              CMake Deprecation Warning at /usr/share/cmake-3.10/Modules/CMakeForceCompiler.cmake:83 (message):
                The CMAKE_FORCE_CXX_COMPILER macro is deprecated.  Instead just set
                CMAKE_CXX_COMPILER and allow CMake to identify the compiler.
              Call Stack (most recent call first):
                /opt/cmake_hexagon/toolchain/Toolchain-arm-linux-gnueabi.cmake:109 (cmake_force_cxx_compiler)
                /usr/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake:94 (include)
                CMakeLists.txt
              
              
              CMake Deprecation Warning at /usr/share/cmake-3.10/Modules/CMakeForceCompiler.cmake:69 (message):
                The CMAKE_FORCE_C_COMPILER macro is deprecated.  Instead just set
                CMAKE_C_COMPILER and allow CMake to identify the compiler.
              Call Stack (most recent call first):
                /opt/cmake_hexagon/toolchain/Toolchain-arm-linux-gnueabi.cmake:98 (cmake_force_c_compiler)
                /home/root/build_apps/CMakeFiles/3.10.2/CMakeSystem.cmake:6 (include)
                CMakeLists.txt
              
              
              CMake Deprecation Warning at /usr/share/cmake-3.10/Modules/CMakeForceCompiler.cmake:83 (message):
                The CMAKE_FORCE_CXX_COMPILER macro is deprecated.  Instead just set
                CMAKE_CXX_COMPILER and allow CMake to identify the compiler.
              Call Stack (most recent call first):
                /opt/cmake_hexagon/toolchain/Toolchain-arm-linux-gnueabi.cmake:109 (cmake_force_cxx_compiler)
                /home/root/build_apps/CMakeFiles/3.10.2/CMakeSystem.cmake:6 (include)
                CMakeLists.txt
              
              
              Generated generate_io_rpc_stubs target
              -- Configuring done
              -- Generating done
              -- Build files have been written to: /home/root/build_apps
              Scanning dependencies of target generate_io_rpc_stubs
              [  3%] Generating io_rpc.h, io_rpc_skel.c, io_rpc_stub.c
              [  3%] Built target generate_io_rpc_stubs
              Scanning dependencies of target voxl_io
              [  6%] Building C object CMakeFiles/voxl_io.dir/voxl_io_uart.c.o
              [  9%] Building C object CMakeFiles/voxl_io.dir/voxl_io_misc.c.o
              [ 12%] Building C object CMakeFiles/voxl_io.dir/voxl_io_spi.c.o
              [ 15%] Building C object CMakeFiles/voxl_io.dir/voxl_io_gpio.c.o
              [ 18%] Building C object CMakeFiles/voxl_io.dir/voxl_io_i2c.c.o
              [ 21%] Building C object CMakeFiles/voxl_io.dir/voxl_io_mavparser.c.o
              [ 24%] Building C object CMakeFiles/voxl_io.dir/io_rpc_stub.c.o
              [ 27%] Building C object CMakeFiles/voxl_io.dir/opt/Qualcomm/Hexagon_SDK/3.1/libs/common/rpcmem/src/rpcmem.c.o
              [ 30%] Linking C shared library libvoxl_io.so
              [ 36%] Built target voxl_io
              Scanning dependencies of target voxl-test-mavparser
              [ 39%] Building C object CMakeFiles/voxl-test-mavparser.dir/voxl-test-mavparser.c.o
              [ 42%] Linking C executable voxl-test-mavparser
              [ 45%] Built target voxl-test-mavparser
              Scanning dependencies of target voxl-i2c
              [ 48%] Building C object CMakeFiles/voxl-i2c.dir/voxl-i2c.c.o
              [ 51%] Linking C executable voxl-i2c
              [ 54%] Built target voxl-i2c
              Scanning dependencies of target voxl-spi
              [ 57%] Building C object CMakeFiles/voxl-spi.dir/voxl-spi.c.o
              [ 60%] Linking C executable voxl-spi
              [ 63%] Built target voxl-spi
              Scanning dependencies of target voxl-gpio-loopback
              [ 66%] Building C object CMakeFiles/voxl-gpio-loopback.dir/voxl-gpio-loopback.c.o
              [ 69%] Linking C executable voxl-gpio-loopback
              [ 72%] Built target voxl-gpio-loopback
              Scanning dependencies of target voxl-gpio
              [ 75%] Building C object CMakeFiles/voxl-gpio.dir/voxl-gpio.c.o
              [ 78%] Linking C executable voxl-gpio
              [ 81%] Built target voxl-gpio
              Scanning dependencies of target voxl-uart-loopback
              [ 84%] Building C object CMakeFiles/voxl-uart-loopback.dir/voxl-uart-loopback.c.o
              [ 87%] Linking C executable voxl-uart-loopback
              [ 90%] Built target voxl-uart-loopback
              Scanning dependencies of target voxl-test-time
              [ 93%] Building C object CMakeFiles/voxl-test-time.dir/voxl-test-time.c.o
              [ 96%] Linking C executable voxl-test-time
              [100%] Built target voxl-test-time
              /home/root
              -- The C compiler identification is Clang 3.9.0
              -- The CXX compiler identification is Clang 3.9.0
              -- Check for working C compiler: /opt/Qualcomm/Hexagon_SDK/3.1/tools/HEXAGON_Tools/8.0.08/Tools/bin/hexagon-clang
              -- Check for working C compiler: /opt/Qualcomm/Hexagon_SDK/3.1/tools/HEXAGON_Tools/8.0.08/Tools/bin/hexagon-clang -- 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: /opt/Qualcomm/Hexagon_SDK/3.1/tools/HEXAGON_Tools/8.0.08/Tools/bin/hexagon-clang++
              -- Check for working CXX compiler: /opt/Qualcomm/Hexagon_SDK/3.1/tools/HEXAGON_Tools/8.0.08/Tools/bin/hexagon-clang++ -- works
              -- Detecting CXX compiler ABI info
              -- Detecting CXX compiler ABI info - done
              -- Detecting CXX compile features
              -- Detecting CXX compile features - done
              -- CMAKE_C_FLAGS:   -O0 -g -std=gnu99 -fno-strict-aliasing                     -fdata-sections -fno-zero-initialized-in-bss -Wall -Wextra                     -Werror -Wno-unused-parameter -Wno-unused-function                     -Wno-unused-variable -Wno-gnu-array-member-paren-init                     -Wno-cast-align -Wno-missing-braces -Wno-strict-aliasing  -D__CUSTOM_FILE_IO__ -mv60 -G0 -DDSP_TYPE_SLPI
              -- CMAKE_CXX_FLAGS:   -DCONFIG_WCHAR_BUILTIN -D__CUSTOM_FILE_IO__ -mv60 -G0 -DDSP_TYPE_SLPI
              Generated generate_io_rpc_stubs target
              QURT_LIB_INCS = 
              QURT_LIB_LINK_LIBS = 
              -- Configuring done
              -- Generating done
              -- Build files have been written to: /home/root/build_sdsp
              Scanning dependencies of target generate_io_rpc_stubs
              [  9%] Generating io_rpc.h, io_rpc_skel.c, io_rpc_stub.c
              [  9%] Built target generate_io_rpc_stubs
              Scanning dependencies of target io_rpc
              [ 18%] Building C object CMakeFiles/io_rpc.dir/io_rpc_misc.c.o
              [ 27%] Building C object CMakeFiles/io_rpc.dir/io_rpc_spi.c.o
              [ 36%] Building C object CMakeFiles/io_rpc.dir/io_rpc_uart.c.o
              [ 45%] Building C object CMakeFiles/io_rpc.dir/io_rpc_gpio.c.o
              [ 54%] Building C object CMakeFiles/io_rpc.dir/io_rpc_i2c.c.o
              [ 63%] Building C object CMakeFiles/io_rpc.dir/io_rpc_mavparser.c.o
              [ 72%] Linking C shared library libio_rpc.so
              [ 72%] Built target io_rpc
              Scanning dependencies of target io_rpc_skel
              [ 81%] Building C object CMakeFiles/io_rpc_skel.dir/io_rpc_skel.c.o
              [ 90%] Linking C shared module libio_rpc_skel.so
              [100%] Built target io_rpc_skel
              /home/root
              
              DONE
              voxl-hexagon:~$
              
              1 Reply Last reply Reply Quote 0
              • SHofmeesterS
                SHofmeester
                last edited by

                @Eric-Katzfey Thank you for your help. I followed your steps and it worked immediately. I am now also able to generate the ipk-package and push it to the VOXL. When I use adb shell, the file appears in home/root/ipk.

                I tried a few things, but I still have some questions:
                How can I run the i2c related files from "libapq8096-io/lib/python" on the VOXL, for example voxl_i2c_scan.py?
                Can I also make my own python scripts and run them?

                1 Reply Last reply Reply Quote 0
                • First post
                  Last post
                Powered by NodeBB | Contributors