How to Build mavsdk_server from new source
-
Hi, I download a new version of mavsdk.
But New mavsdk needs cmake version 3.13 or later.
I try to use voxl-emulator or gcr.io/modalai-public/voxl-mavsdk-cpp:v1.0, but their cmake are too old.
Is there a way to build new version of mavsdk? -
@PIRON-PI You can get release binaries, for example: https://github.com/mavlink/MAVSDK/releases/download/v0.43.0/mavsdk_server_linux-arm64-musl
-
Hi Eric, the demo code of python can work with mavsdk_server,
but C++ demo code can't connect with mavsdk_server.
I read source code of python that assigns udp port for mavsdk_server.
C++ demo code doesn't assign udp port for mavsdk_server.
Does this cause C++ demo code doesn't work? -
@PIRON-PI I have only worked with the python code.
-
@PIRON-PI You don't need mavsdk-server if you use C++.
-
This post is deleted! -
@CY-1992 You give me confidence .
I did it.
Thanks a lot. -
@CY-1992 I generate libmavsdk.so from instruction of mavsdk.mavlink.io,
but it can't be compatible with VOXL.
Do you know where I can get source to generate libmavsdk.so for VOXL flight Deck? -
I assume you have seen this tutorial since you mention the docker image
Have you tried to upgrade cmake inside the voxl-mavsdk-cpp:v1.0 docker? If cmake version is the only blocker, you should be able to upgrade it to keep moving
-
@Chad-Sweet I try to upgrade cmake in docker, but it doesn't work.
-
@Chad-Sweet Maybe you can offer the right version of mavsdk source. Because I use "git clone https://github.com/mavlink/MAVSDK.git". It's too new to be compatible with VOXL flight Deck.
-
@PIRON-PI You don't need to build mavsdk from the source if you are using it in docker on voxl. Just download the arm64 deb package and install it in the docker as shown below in Dockerfile. Try to use base image arm64v8/ubuntu:20.04. It has the latest cmake version.
FROM arm64v8/ubuntu:20.04 ENV DEBIAN_FRONTEND noninteractive RUN apt-get -y update && \ apt-get install -y build-essential cmake git wget WORKDIR /home RUN wget https://github.com/mavlink/MAVSDK/releases/download/v1.4.0/libmavsdk-dev_1.4.0_debian11_arm64.deb && \ dpkg -i libmavsdk-dev_1.4.0_debian11_arm64.deb WORKDIR /home #copy all your c++ files and CMakeLists.txt to home directory COPY . . RUN cmake -Bbuild -DCMAKE_BUILD_TYPE=Debug -H. && \ cmake --build build -j4
-
@chaitanya Sorry. My goal is that cell phone can control VOXL flight deck.
Therefore, I need a MAVSDK library( e.g. libmavsdk.so) at Android. Then I can use the library to send command to control VOXL flight deck.