Linux Ubuntu下飞控日志分析工具MAVGCL的搭建
之前看到有人在微信群里秀一个飞控日志的软件,感觉很酷,就一直心里痒痒,折腾半天总算在别人帮助下搭出来了。
官方文档:https://github.com/ecmnet/MAVGCL
Java的版本问题
java有Oracle的jdk,也有open-jdk,这个是必须使用Oracle jdk-9的,但是由于种种原因它已经挂了~所以要自寻途径来搞到了。
官方文档说的很明白,要至少版本为8,9、10兼容:
但其实Ubuntu下只能用9,因为这个作者是在苹果的环境下试的……
可能遇到的Java问题
如果之前搭过px4的环境,可能会莫名其妙发现自己有open-jdk,还有ant,如果使用这个命令安装ant:
sudo apt-get install ant
会自动给你安上open-jdk
The following NEW packages will be installed:
ant ant-optional ca-certificates-java default-jre-headless java-common
openjdk-8-jre-headless
反正很莫名其妙地耽误了接下来的工作
所以要自己去找一个jdk-9的文件:
然后解压找个地方放好,这里放在/usr/java目录下
sudo tar -zvxf jdk-9_linux-x64_bin.tar.gz
sudo mv ~/jdk-9 /usr/java
然后和另一篇文章一样,开始用一个版本切换工具倒腾:
https://blog.csdn.net/baidu_41704597/article/details/95045158
先链接这个新的jdk-9
sudo update-alternatives --install /usr/bin/java java /usr/java/jdk-9/bin/java 90
sudo update-alternatives --install /usr/bin/javac javac /usr/java/jdk-9/bin/javac 90
sudo update-alternatives --install /usr/bin/jar jar /usr/java/jdk-9/bin/jar 90
最后那个数字代表优先级的意思,不太用理会,自己写一个就行
然后开始选择版本:
现在就全是jdk-9的版本了,可以继续搭建了
编译MAVGCL
先git下来代码:
git clone https://github.com/ecmnet/MAVGCL.git
然后进入目录,编辑这个build.xml文件,在大约六十行处添加一段内容:
这个下面补上:
<target name="build" depends="compile">
<taskdef resource="com/sun/javafx/tools/ant/antlib.xml"
uri="javafx:com.sun.javafx.tools.ant"
classpath="/usr/java/jdk-9/lib/ant-javafx.jar"/>
解决问题的来源(别人告诉我的):
https://docs.oracle.com/javase/8/docs/technotes/guides/deploy/javafx_ant_tasks.html
然后进行ant all操作:
然后进入dist目录运行就可以了
java -jar MAVGAnalysis.jar
打开就是这个样子的
创建快捷方式
在MAVGCL文件夹下面创建一个.sh文件,内容如下:
#!/bin/sh
JAVA_HOME="/usr/java/jdk-9"
CLASSPATH=".:${JAVA_HOME}/lib:"
PATH="${JAVA_HOME}/bin:$PATH"
cd /home/strange/flight_analysis/MAVGCL/MAVGCL/dist
java -jar MAVGAnalysis.jar
要
修
改
这
个
.
s
h
文
件
的
可
操
作
属
性
\color{red}{要修改这个.sh文件的可操作属性}
要修改这个.sh文件的可操作属性
或者用命令行 chmod +x 命令来执行
然后在桌面创建一个.desktop文件
[Desktop Entry]
Version=0.8.2
Type=Application
Terminal=false
Exec=/home/strange/flight_analysis/MAVGCL/MAVGCL-start.sh
Name=MAVGAnalysis
Icon=/home/strange/flight_analysis/MAVGCL/MAVGCL/MAVGAnalysis.png
同样要修改属性
最后,就在桌面点点图标就能启动软件了,至于那些软件的设置参数什么的,如果要添加,就写进.sh文件里就好
苹果下面的尝试
一切顺利,自带的jdk8就好使,因为:
至于什么要做什么改变,上面讲的很清楚了~比较坑人就是了,开发者也没试非苹果环境下的编译吧