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

    voxl-tflite-server forward compatibility ?

    Modal Pipe Architecture (MPA)
    4
    20
    1122
    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.
    • Philemon BennerP
      Philemon Benner
      last edited by

      @Matt-Turi Okey but that's weird to me because in qrb5165-emulator you have a gcc-7 compiler. Libs like libuvc from voxl-uvc-server are being built with it. There i had no issues including that to the tflite-server and running it on the voxl.

      1 Reply Last reply Reply Quote 0
      • ?
        A Former User
        last edited by

        libuvc for voxl is built in voxl-emulator, not the qrb5165 emulator. If you check out the readme on the dev branch, you can see the separate build instructions for separate platforms.

        1 Reply Last reply Reply Quote 0
        • Philemon BennerP
          Philemon Benner
          last edited by

          @Matt-Turi Ok yeah i see. I don't even know why i went to qrb emulator but when building the libuvc library from source in qrb emulator, it still worked for me. I have a running version of it on the Voxl, should that even be possible if it's just made for qrb5165 devices?

          1 Reply Last reply Reply Quote 0
          • ?
            A Former User
            last edited by

            Ah I see. libuvc is a c library, so the code is backwards compatible with gcc-4.9 and can be compiled with the newer gcc. The libs you are trying to compile are c++, so they are affected by the differences between compiler versions.

            1 Reply Last reply Reply Quote 0
            • Philemon BennerP
              Philemon Benner
              last edited by

              @Matt-Turi Ok good to know.

              1 Reply Last reply Reply Quote 0
              • Philemon BennerP
                Philemon Benner
                last edited by

                @Matt-Turi btw why is voxl-emulator architecture armv7l if we have aarch64 on actual voxl? Will this be a problem when compiling in emulator?

                Eric KatzfeyE 1 Reply Last reply Reply Quote 0
                • ?
                  A Former User
                  last edited by A Former User

                  This post is deleted!
                  1 Reply Last reply Reply Quote 0
                  • Eric KatzfeyE
                    Eric Katzfey ModalAI Team @Philemon Benner
                    last edited by

                    @Philemon-Benner Voxl is 64 bit and the OS is 64 bit. However, Qualcomm provides many of their packages for the device as 32 bit and, consequently, anything that has a dependency on these packages must also be 32 bit. That is why you can build 64 bit applications and have them run successfully on Voxl. It just means that that application had no 32 bit dependencies.

                    1 Reply Last reply Reply Quote 0
                    • Philemon BennerP
                      Philemon Benner
                      last edited by

                      Okey thanks for explaining

                      1 Reply Last reply Reply Quote 0
                      • Philemon BennerP
                        Philemon Benner
                        last edited by Philemon Benner

                        @Matt-Turi
                        I know it's not really related to the voxl but if include directorys in cmake like that:

                        include_directories(/home/root/third_party/AWS/wrkspace/lib)
                        

                        the compiler should find the packages located in there or?

                        [100%] Linking CXX executable Process
                        /usr/lib/gcc-cross/aarch64-linux-gnu/7/../../../../aarch64-linux-gnu/bin/ld: cannot find -lDiscovery-cpp
                        /usr/lib/gcc-cross/aarch64-linux-gnu/7/../../../../aarch64-linux-gnu/bin/ld: cannot find -lEventstreamRpc-cpp
                        

                        but the linked library is located there:

                        voxl-cross:~(master)$ ls /home/root/third_party/AWS/wrkspace/lib | grep Discovery-cpp
                        Discovery-cpp
                        libDiscovery-cpp.a
                        
                        1 Reply Last reply Reply Quote 0
                        • Chad SweetC
                          Chad Sweet ModalAI Team
                          last edited by

                          Not totally sure what you're asking, but try looking into target_link_libraries in the cmake documentation

                          1 Reply Last reply Reply Quote 0
                          • Philemon BennerP
                            Philemon Benner
                            last edited by

                            @Matt-Turi Ok so i got it working with CXX17, it's working in voxl-emulator:

                            voxl-emulator:~$ file program
                            voxl-mission-logic: ELF 64-bit LSB executable, ARM aarch64, version 1 (GNU/Linux), statically linked, BuildID[sha1]=somekey , for GNU/Linux 5.4.0, not stripped
                            voxl-emulator:~$ ./program --arg someArg
                            [2022-03-22 12:23:14.804] [info] someText
                            [2022-03-22 12:23:14.807] [info] someText
                            [2022-03-22 12:23:15.279] [info] someText
                            

                            But on actual voxl it's not working:

                            voxl:/data$ ./program --arg someArg
                            FATAL: kernel too old
                            Aborted
                            

                            Kernel Versions in voxl-emulator and voxl_platform_3-3-0-0.5.0-a system image are actually different:
                            emulator kernel version: 5.13.0-35-generic
                            voxl kernel version: 3.18.71-perf
                            Shouldn't voxl emulator have the same kernel version as the voxl?
                            in the docs it says:

                            • voxl-emulator simulates the VOXL system image and is built alongside the base system image
                            1 Reply Last reply Reply Quote 0
                            • Philemon BennerP
                              Philemon Benner
                              last edited by

                              Upgrading to newest system image didn't work either

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

                                @Philemon-Benner voxl-emulator is a Docker image, not a complete Virtual Machine, so it uses the same kernel as the machine you run it on.

                                Philemon BennerP 1 Reply Last reply Reply Quote 0
                                • Philemon BennerP
                                  Philemon Benner @Eric Katzfey
                                  last edited by

                                  @Eric-Katzfey Ok thanks for the fast answer.

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