Here it is.
I've tried in this morning to compile on my Manjaro machine (Arch based linux distro)
[
[email protected] sololink]$ uname -a
Linux T14s 5.15.76-1-MANJARO #1 SMP PREEMPT Sat Oct 29 14:22:16 UTC 2022 x86_64 GNU/Linux
Ofcourse you will have to do some changes, it will not work as is on the github. Below are my changes:
Add the missing "#include <phtread>" in the code as is here or else the compiler will complain
[
[email protected] sololink]$ git diff
diff --git a/sololink/flightcode/dataflash_logger/dataflash_logger.cpp b/sololink/flightcode/dataflash_logger/dataflash_logger.cpp
index 6c5ea62..09a75d4 100644
--- a/sololink/flightcode/dataflash_logger/dataflash_logger.cpp
+++ b/sololink/flightcode/dataflash_logger/dataflash_logger.cpp
@@ -5,6 +5,7 @@
#include <fcntl.h>
#include <errno.h>
#include <unistd.h>
+#include <pthread.h>
#include <sys/stat.h>
#include <sys/types.h>
Also install
gstreamer v0.10 library (package), as I saw it's a dependency that was not present on my linux machine. It's an very old version.
[
[email protected] log]$ pacman -Q|grep -i gstreamer
gstreamer 1.20.4-1
gstreamer0.10 0.10.36-20
To see that 'gstreamer' was installed correctly do this (compiler will use the '
gst.h' file) :
[
[email protected] sololink]$ find /usr/|grep gst/gst.h$
/usr/include/gstreamer-1.0/gst/gst.h
/usr/include/gstreamer-0.10/gst/gst.h
... and surprise, it seems that I also have installed gstreamer-1.0. Until I didn't install v0.10 the build process didn't work.
To do the actual build it's simple (make sure you have the make and gcc packages installed).
In my case I had the following versions installed:
- make 4.3-3
- gcc 12.2.0-1
[
[email protected] sololink]$ pwd
/home/sorin/personal/github/OpenSolo/sololink
[
[email protected] sololink]$ make
make -C flightcode
make[1]: Entering directory '/home/sorin/personal/github/OpenSolo/sololink/flightcode'
make -C arp_table
make[2]: Entering directory '/home/sorin/personal/github/OpenSolo/sololink/flightcode/arp_table'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/sorin/personal/github/OpenSolo/sololink/flightcode/arp_table'
make -C dflog
...
Before running "sololink_config" you must change the hostname or else the tool cannot identify if it's running on controller or actual solo quadcopter.
Have fun
