一、问题描述
在安装ROS2编译PX4飞控源码时,推荐使用uXRCE-DDS替代FastRTPS。
发现安装uXRCE-DDS时,在make那一步骤会提示cmake版本过低,至少需要3.20及以上,就去网上找相关升级cmake方法,在无论是否移除旧版本cmake情况下,通过以下方法安装后发现无法编译PX4了,会提示少两个文件导致编译不成功。
估计很多人都是通过以下办法升级cmake的
不知道为何我的执行完sudo make install这一步后查询版本直接就是最新的了,貌似旧版本已经被覆盖掉了,然后编译就出问题了,如果有跟我一样情况的,可以看看下面解决办法。
二、解决办法
不要卸载旧版本的cmake,正确安装步骤如下:
去cmake官网去下载压缩包,官网地址:https://cmake.org/download/
我的电脑是Linux x86_64,下载.tar.gz文件,用uname -m查询架构信息
具体安装这位博主方法https://blog.csdn.net/FLM19990626/article/details/129631927,我这里直接给出步骤
1.tar -zxvf cmake-3.29.3-linux-x86_64.tar.gz
2.sudo mv cmake-3.29.3-linux-x86_64 /usr/share/cmake-3.29.3
3.sudo ln -sf /usr/share/cmake-3.29.3/bin/cmake /usr/bin/cmake
通过cmake --version查询到版本升级成功
后面编译PX4时不会提示少两个文件了。