Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse
Brand Logo

ModalAI Forum

  1. ModalAI Support Forum
  2. Software Development
  3. VOXL SDK
  4. Question about building custom applications, docker images and dependencies

Question about building custom applications, docker images and dependencies

Scheduled Pinned Locked Moved VOXL SDK
6 Posts 2 Posters 2.1k Views 1 Watching
  • 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.
  • P Offline
    P Offline
    peterkrull
    wrote on last edited by
    #1

    I will preface by saying I am a novice as both working with docker, and working with complex C++ code bases for cross-compilation.

    I am attempting to make a custom vio-server for the VOXL 2 which bases its estimation on an open source VIO solution from a science paper, specifically DM-VIO My plan is to start with the voxl-qvio-server, pull out the mvVISLAM guts and replace the relevant parts with the equivalent DM-VIO parts. DM-VIO however requires GTSAM as a dependency, which has to be compiled and installed. Is it right that I would have to to compile and install GTSAM inside docker (qrb5165-emulator)? From my experience compiling GTSAM natively on my PC, I know it is very slow. In addition, I have had issues with the compilation consuming large amounts of ram, eventually bringing everything to a crawl. Having to do this every time i restart the docker would not be viable. Maybe I am doing something completely wrong?

    By the way, I am on a Windows machine running a Ubuntu 20.04 install through WSL, which also launches the docker image. Perhaps this is suboptimal, but I could not get voxl-docker work natively in Windows.

    Eric KatzfeyE 1 Reply Last reply
    0
    • P peterkrull

      I will preface by saying I am a novice as both working with docker, and working with complex C++ code bases for cross-compilation.

      I am attempting to make a custom vio-server for the VOXL 2 which bases its estimation on an open source VIO solution from a science paper, specifically DM-VIO My plan is to start with the voxl-qvio-server, pull out the mvVISLAM guts and replace the relevant parts with the equivalent DM-VIO parts. DM-VIO however requires GTSAM as a dependency, which has to be compiled and installed. Is it right that I would have to to compile and install GTSAM inside docker (qrb5165-emulator)? From my experience compiling GTSAM natively on my PC, I know it is very slow. In addition, I have had issues with the compilation consuming large amounts of ram, eventually bringing everything to a crawl. Having to do this every time i restart the docker would not be viable. Maybe I am doing something completely wrong?

      By the way, I am on a Windows machine running a Ubuntu 20.04 install through WSL, which also launches the docker image. Perhaps this is suboptimal, but I could not get voxl-docker work natively in Windows.

      Eric KatzfeyE Offline
      Eric KatzfeyE Offline
      Eric Katzfey
      ModalAI Team
      wrote on last edited by
      #2

      @peterkrull If you make changes to a Docker you can preserve them with the Docker commit command. https://docs.docker.com/engine/reference/commandline/commit/

      P 1 Reply Last reply
      0
      • Eric KatzfeyE Eric Katzfey

        @peterkrull If you make changes to a Docker you can preserve them with the Docker commit command. https://docs.docker.com/engine/reference/commandline/commit/

        P Offline
        P Offline
        peterkrull
        wrote on last edited by
        #3

        @Eric-Katzfey Thanks, that seems to be exactly what I need. I also figured out that GTSAM with the GCC compiler is what caused the extreme memory usage and eventual failed compilation, changing to Clang helped. It is right that I am using the qrb5165-emulator and not the voxl-cross image? I believe some parts of the documentation recommend using the voxl-cross for new development, but I could not get it to build the voxl-qvio-server out of the box.

        Eric KatzfeyE 1 Reply Last reply
        0
        • P peterkrull

          @Eric-Katzfey Thanks, that seems to be exactly what I need. I also figured out that GTSAM with the GCC compiler is what caused the extreme memory usage and eventual failed compilation, changing to Clang helped. It is right that I am using the qrb5165-emulator and not the voxl-cross image? I believe some parts of the documentation recommend using the voxl-cross for new development, but I could not get it to build the voxl-qvio-server out of the box.

          Eric KatzfeyE Offline
          Eric KatzfeyE Offline
          Eric Katzfey
          ModalAI Team
          wrote on last edited by
          #4

          @peterkrull The choice between voxl-cross and qrb5165-emulator usually comes down to dependencies. voxl-cross is a much faster way to build but it provides a minimal environment and so if will often lack needed dependencies for more complex applications. The emulator actually has the voxl2 file system in it so has many more dependencies in the environment already. The documentation for voxl-qvio-server states that you need the emulator https://gitlab.com/voxl-public/voxl-sdk/services/voxl-qvio-server#build-instructions-1

          P 1 Reply Last reply
          0
          • Eric KatzfeyE Eric Katzfey

            @peterkrull The choice between voxl-cross and qrb5165-emulator usually comes down to dependencies. voxl-cross is a much faster way to build but it provides a minimal environment and so if will often lack needed dependencies for more complex applications. The emulator actually has the voxl2 file system in it so has many more dependencies in the environment already. The documentation for voxl-qvio-server states that you need the emulator https://gitlab.com/voxl-public/voxl-sdk/services/voxl-qvio-server#build-instructions-1

            P Offline
            P Offline
            peterkrull
            wrote on last edited by
            #5

            @Eric-Katzfey Yea I found out about the dependencies the hard way by spending some hours trying to figure out why my installed dependencies were not accepted by Cmake. Of course because they were installed as amd64. Apart from slower compilation, what is the argument against using the qrb5165-emulator?

            Eric KatzfeyE 1 Reply Last reply
            0
            • P peterkrull

              @Eric-Katzfey Yea I found out about the dependencies the hard way by spending some hours trying to figure out why my installed dependencies were not accepted by Cmake. Of course because they were installed as amd64. Apart from slower compilation, what is the argument against using the qrb5165-emulator?

              Eric KatzfeyE Offline
              Eric KatzfeyE Offline
              Eric Katzfey
              ModalAI Team
              wrote on last edited by
              #6

              @peterkrull I think qrb5165-emulator is a fine choice.

              1 Reply Last reply
              0

              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
              Reply
              • Reply as topic
              Log in to reply
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes


              ModalAI
              Categories Recent Tags ModalAI.com Docs
              © 2026 ModalAI® · Accelerating autonomy for smaller, smarter, safer drones · Powered by NodeBB
              • Login

              • Don't have an account? Register

              • Login or register to search.
              • First post
                Last post
              0
              • Categories
              • Recent
              • Tags
              • Popular
              • Users
              • Groups