VVPX4 Deployment to VOXL depedencies



  • Hi,

    I've been trying to deploy VVPX4 and see some dependencies. I am using the VOXL Platform 3.8.0-0.7 and VOXL-Cross-2.1 docker image.

    voxl-vision-px4-master $./deploy_to_voxl.sh 
    searching for ADB device
    checking VOXL for dpkg/opkg
    opkg detected
    voxl-vision-px4_1.2.0.ipk: 1 file pushed. 3.4 MB/s (105362 bytes in 0.029s)
    Reinstalling voxl-vision-px4 (1.2.0) on root.
    Configuring voxl-vision-px4.
    Collected errors:
     * satisfy_dependencies_for: Cannot satisfy the following dependencies for voxl-vision-px4:
     * 	libmodal-pipe (>= 2.4.0) * 	libmodal-cv (>= 0.1.0) * 
    DONE
    

    Maybe I have to build the following in a specific directory but I am not sure which one:

    $ mkdir cross-workspace
    $ cd cross-workspace
    $ voxl-docker -i voxl-cross:V1.9
    voxl-cross:~$ git clone https://gitlab.com/voxl-public/voxl-sdk/core-libs/libmodal-json.git
    voxl-cross:~$ cd libmodal-json/
    voxl-cross:~$ ./build.sh qrb5165
    

    Can I install or source these two dependencies separately?


  • Dev Team

    Yes you could, or you can install via our package management feed. Here's the two packages from there from SDK 0.8:

    http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64/libmodal-cv_0.1.0.ipk
    http://voxl-packages.modalai.com/dists/apq8096/sdk-0.8/binary-arm64/libmodal-pipe_2.4.0.ipk

    Depending on your setup, you could also install the VOXL-SDK fully and then modify parts you need from source. More info here: https://docs.modalai.com/voxl-sdk/

    Package management on VOXL1 here: https://docs.modalai.com/configure-pkg-manager/



  • Thank you @modaltb.

    I'm having trouble deploying VVPX4 to to VOXL. The dependencies not being satisfied are being installed so I'm not sure what to do.

    Here is what I'm doing:

    voxl-cross:~$ ./install_build_deps.sh apq8096 staging 
    using apq8096 staging repo
    Downloading http://voxl-packages.modalai.com/dists/apq8096/staging/binary-arm64//Packages.gz.
    Updated source 'staging'.
    installing: 
    libmodal-json
    libmodal-pipe
    librc-math
    libmodal-cv
    voxl-mpa-tools
    voxl-mavlink
    Installing libmodal-json (0.4.2) on root.
    Downloading http://voxl-packages.modalai.com/dists/apq8096/staging/binary-arm64//libmodal-json_0.4.2.ipk.
    Configuring libmodal-json.
    Installing libmodal-pipe (2.4.0) on root.
    Downloading http://voxl-packages.modalai.com/dists/apq8096/staging/binary-arm64//libmodal-pipe_2.4.0.ipk.
    Configuring libmodal-pipe.
    Installing librc-math (1.1.8) on root.
    Downloading http://voxl-packages.modalai.com/dists/apq8096/staging/binary-arm64//librc-math_1.1.8.ipk.
    Configuring librc-math.
    Installing libmodal-cv (0.1.0) on root.
    Downloading http://voxl-packages.modalai.com/dists/apq8096/staging/binary-arm64//libmodal-cv_0.1.0.ipk.
    Configuring libmodal-cv.
    Installing voxl-mpa-tools (0.7.2) on root.
    Downloading http://voxl-packages.modalai.com/dists/apq8096/staging/binary-arm64//voxl-mpa-tools_0.7.2.ipk.
    Configuring voxl-mpa-tools.
    Installing voxl-mavlink (0.1.0) on root.
    Downloading http://voxl-packages.modalai.com/dists/apq8096/staging/binary-arm64//voxl-mavlink_0.1.0.ipk.
    Configuring voxl-mavlink.
    
    Done installing dependencies
    
    voxl-cross:~$ ./build.sh apq8096 
    -- The C compiler identification is GNU 4.9.3
    -- The CXX compiler identification is GNU 4.9.3
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Check for working C compiler: /usr/bin/aarch64-linux-gnu-gcc-4.9 - skipped
    -- Detecting C compile features
    -- Detecting C compile features - done
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Check for working CXX compiler: /usr/bin/aarch64-linux-gnu-g++-4.9 - skipped
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Building for platform APQ8096
    -- Configuring done
    -- Generating done
    -- Build files have been written to: /home/root/build64
    [  3%] Building C object utils/CMakeFiles/voxl-px4-shell.dir/voxl-px4-shell.c.o
    [ 11%] Building C object src/CMakeFiles/voxl-vision-px4.dir/geometry.c.o
    [ 11%] Building C object src/CMakeFiles/voxl-vision-px4.dir/config_file.c.o
    [ 15%] Building C object src/CMakeFiles/voxl-vision-px4.dir/control_input.c.o
    [ 23%] Building C object utils/CMakeFiles/voxl-calibrate-px4-horizon.dir/voxl-calibrate-px4-horizon.c.o
    [ 26%] Building C object src/CMakeFiles/voxl-vision-px4.dir/fixed_pose_input.c.o
    [ 23%] Building C object src/CMakeFiles/voxl-vision-px4.dir/horizon_cal.c.o
    [ 30%] Building C object src/CMakeFiles/voxl-vision-px4.dir/main.c.o
    In file included from /usr/aarch64-linux-gnu-2.23/include/features.h:367:0,
                     from /usr/aarch64-linux-gnu-2.23/include/stdio.h:27,
                     from /home/root/src/config_file.c:34:
    /usr/aarch64-linux-gnu-2.23/include/bits/stdlib.h:64:8: warning: no previous declaration for 'ptsname_r' [-Wmissing-declarations]
     __NTH (ptsname_r (int __fd, char *__buf, size_t __buflen))
            ^
    /usr/aarch64-linux-gnu-2.23/include/sys/cdefs.h:57:59: note: in definition of macro '__NTH'
     #  define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct
                                                               ^
    In file included from /home/root/utils/voxl-px4-shell.c:39:0:
    /usr/aarch64-linux-gnu-2.23/include/string.h:649:1: warning: no previous declaration for '__mempcpy_inline' [-Wmissing-declarations]
     __mempcpy_inline (void *__restrict __dest,
     ^
    In file included from /usr/aarch64-linux-gnu-2.23/include/features.h:367:0,
                     from /usr/aarch64-linux-gnu-2.23/include/stdio.h:27,
                     from /home/root/utils/voxl-calibrate-px4-horizon.c:34:
    /usr/aarch64-linux-gnu-2.23/include/bits/stdlib.h:64:8: warning: no previous declaration for 'ptsname_r' [-Wmissing-declarations]
     __NTH (ptsname_r (int __fd, char *__buf, size_t __buflen))
            ^
    /usr/aarch64-linux-gnu-2.23/include/sys/cdefs.h:57:59: note: in definition of macro '__NTH'
     #  define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct
                                                               ^
    In file included from /usr/aarch64-linux-gnu-2.23/include/features.h:367:0,
                     from /usr/aarch64-linux-gnu-2.23/include/stdio.h:27,
                     from /home/root/src/main.c:34:
    /usr/aarch64-linux-gnu-2.23/include/bits/stdlib.h:64:8: warning: no previous declaration for 'ptsname_r' [-Wmissing-declarations]
     __NTH (ptsname_r (int __fd, char *__buf, size_t __buflen))
            ^
    /usr/aarch64-linux-gnu-2.23/include/sys/cdefs.h:57:59: note: in definition of macro '__NTH'
     #  define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct
                                                               ^
    [ 34%] Linking C executable voxl-calibrate-px4-horizon
    [ 38%] Linking C executable voxl-px4-shell
    In file included from /usr/aarch64-linux-gnu-2.23/include/features.h:367:0,
                     from /usr/aarch64-linux-gnu-2.23/include/stdio.h:27,
                     from /home/root/src/geometry.c:34:
    /usr/aarch64-linux-gnu-2.23/include/bits/stdlib.h:64:8: warning: no previous declaration for 'ptsname_r' [-Wmissing-declarations]
     __NTH (ptsname_r (int __fd, char *__buf, size_t __buflen))
            ^
    /usr/aarch64-linux-gnu-2.23/include/sys/cdefs.h:57:59: note: in definition of macro '__NTH'
     #  define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct
                                                               ^
    [ 38%] Built target voxl-calibrate-px4-horizon
    [ 42%] Building C object src/CMakeFiles/voxl-vision-px4.dir/misc.c.o
    [ 42%] Built target voxl-px4-shell
    [ 46%] Building C object src/CMakeFiles/voxl-vision-px4.dir/obs_pc_filter.c.o
    [ 50%] Building C object src/CMakeFiles/voxl-vision-px4.dir/offboard_figure_eight.c.o
    In file included from /usr/aarch64-linux-gnu-2.23/include/features.h:367:0,
                     from /usr/aarch64-linux-gnu-2.23/include/stdio.h:27,
                     from /home/root/src/obs_pc_filter.c:34:
    /usr/aarch64-linux-gnu-2.23/include/bits/stdlib.h:64:8: warning: no previous declaration for 'ptsname_r' [-Wmissing-declarations]
     __NTH (ptsname_r (int __fd, char *__buf, size_t __buflen))
            ^
    /usr/aarch64-linux-gnu-2.23/include/sys/cdefs.h:57:59: note: in definition of macro '__NTH'
     #  define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct
                                                               ^
    [ 53%] Building C object src/CMakeFiles/voxl-vision-px4.dir/offboard_follow_tag.c.o
    [ 57%] Building C object src/CMakeFiles/voxl-vision-px4.dir/offboard_mode.c.o
    [ 61%] Building C object src/CMakeFiles/voxl-vision-px4.dir/offboard_trajectory.c.o
    [ 65%] Building C object src/CMakeFiles/voxl-vision-px4.dir/pose_filter.c.o
    [ 69%] Building C object src/CMakeFiles/voxl-vision-px4.dir/px4_mavlink.c.o
    [ 73%] Building C object src/CMakeFiles/voxl-vision-px4.dir/px4_monitor.c.o
    [ 76%] Building C object src/CMakeFiles/voxl-vision-px4.dir/px4_shell.c.o
    [ 80%] Building C object src/CMakeFiles/voxl-vision-px4.dir/tag_manager.c.o
    [ 84%] Building C object src/CMakeFiles/voxl-vision-px4.dir/transform_ringbuf.c.o
    In file included from /usr/aarch64-linux-gnu-2.23/include/features.h:367:0,
                     from /usr/aarch64-linux-gnu-2.23/include/stdio.h:27,
                     from /home/root/src/transform_ringbuf.c:19:
    /usr/aarch64-linux-gnu-2.23/include/bits/stdlib.h:64:8: warning: no previous declaration for 'ptsname_r' [-Wmissing-declarations]
     __NTH (ptsname_r (int __fd, char *__buf, size_t __buflen))
            ^
    /usr/aarch64-linux-gnu-2.23/include/sys/cdefs.h:57:59: note: in definition of macro '__NTH'
     #  define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct
                                                               ^
    [ 88%] Building C object src/CMakeFiles/voxl-vision-px4.dir/udp_mavlink.c.o
    [ 92%] Building C object src/CMakeFiles/voxl-vision-px4.dir/vio_manager.c.o
    In file included from /usr/aarch64-linux-gnu-2.23/include/features.h:367:0,
                     from /usr/aarch64-linux-gnu-2.23/include/stdio.h:27,
                     from /home/root/src/udp_mavlink.c:34:
    /usr/aarch64-linux-gnu-2.23/include/bits/stdlib.h:64:8: warning: no previous declaration for 'ptsname_r' [-Wmissing-declarations]
     __NTH (ptsname_r (int __fd, char *__buf, size_t __buflen))
            ^
    /usr/aarch64-linux-gnu-2.23/include/sys/cdefs.h:57:59: note: in definition of macro '__NTH'
     #  define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct
                                                               ^
    [ 96%] Building C object src/CMakeFiles/voxl-vision-px4.dir/voa_manager.c.o
    [100%] Linking C executable voxl-vision-px4
    [100%] Built target voxl-vision-px4
    voxl-cross:~$ ./make_package.sh ipk 
    Package Name:  voxl-vision-px4
    version Number:  1.2.0
    Consolidate compiler generated dependencies of target voxl-vision-px4
    [ 84%] Built target voxl-vision-px4
    Consolidate compiler generated dependencies of target voxl-px4-shell
    [ 92%] Built target voxl-px4-shell
    Consolidate compiler generated dependencies of target voxl-calibrate-px4-horizon
    [100%] Built target voxl-calibrate-px4-horizon
    Install the project...
    -- Install configuration: ""
    -- Installing: ../pkg/data/usr/bin/voxl-vision-px4
    -- Installing: ../pkg/data/usr/include/voxl_vision_px4.h
    -- Installing: ../pkg/data/usr/bin/voxl-px4-shell
    -- Installing: ../pkg/data/usr/bin/voxl-calibrate-px4-horizon
    /home/root
    starting building IPK package
    ar: creating voxl-vision-px4_1.2.0.ipk
    DONE
    voxl-cross:~$ logout
    voxl-vision-px4-master $./deploy_to_voxl.sh adb
    searching for ADB device
    checking VOXL for dpkg/opkg
    opkg detected
    voxl-vision-px4_1.2.0.ipk: 1 file pushed. 8.6 MB/s (105382 bytes in 0.012s)
    Reinstalling voxl-vision-px4 (1.2.0) on root.
    Configuring voxl-vision-px4.
    Collected errors:
     * satisfy_dependencies_for: Cannot satisfy the following dependencies for voxl-vision-px4:
     * 	libmodal-pipe (>= 2.4.0) * 	libmodal-cv (>= 0.1.0) * 
    DONE
    
    

    After this, the package I am trying to deploy isn't on VOXL and the voxl-vision-px4 is enabled but not running.

    Any pointers to what I may be missing?


  • Dev Team

    Hi,

    The install build deps script installs the dependencies to your docker image for building, not onto the voxl. If you're building packages with recent dependencies you'll need to update your voxl with opkg update to make sure it has the latest dependencies.



  • @Alex-Gardner Got it. Thank you!


Log in to reply