解决 ubuntu 下编译文件的时候与 YAML 相关的的报错

输入:

复制代码
catkin build -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8

复制代码
catkin build airsim_tutorial_pkgs -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8

报错如下:

可能是缺少 yaml-cpp 文件,然后操作:

复制代码
sudo apt-get install yaml-cpp
sudo apt-get install ros-noetic-yaml

报错

编译:

复制代码
catkin build airsim_tutorial_pkgs -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8

报错

根据下面的错误,用 VScode 打开报错的文件

打开文件命令:

复制代码
cd /home/leaf/AirSim/ros/src/airsim_ros_pkgs
code .

yaml-cpp 没有链接到 airsim_ros

文件前面 fine_package 没有 find yaml-cpp,加上

这里不能在 find_package(catkin REQUIRED COMPONENTS 里面加入 yaml-cpp,因为这个里面是 find ros 包的,而 yaml-cpp 不是一个 ros 包,是系统的,只能单独写一个 find_packages,加入 yaml-cpp

再编译依旧报错

然后去网上下载 yaml-cpp

git clone 下来后直接安装到系统里

参考链接:

yaml-cpp的安装及使用_yaml cpp安装-CSDN博客

复制代码
 git clone https://github.com/jbeder/yaml-cpp.git
                cd yaml-cpp
                mkdir build && cd build
                cmake ..
                make -j16
                sudo make install

再编译就成功了

复制代码
catkin build airsim_tutorial_pkgs -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8
相关推荐
好奇的菜鸟10 小时前
如何在 Ubuntu 24.04 (Noble) 上使用阿里源
linux·运维·ubuntu
好奇的菜鸟12 小时前
如何在Ubuntu上检查MySQL是否启动并放开3306端口
mysql·ubuntu·adb
ZPC821015 小时前
ubuntu 6.8.0 安装xenomai3.3
linux·运维·ubuntu
电脑能手16 小时前
遇到该问题:kex_exchange_identification: read: Connection reset`的解决办法
linux·ubuntu·ssh
snoopyfly~16 小时前
Ubuntu 24.04 安装配置 Redis 7.0 开机自启
linux·redis·ubuntu
精英的英16 小时前
在Ubuntu 24.04主机上创建Ubuntu 14.04编译环境的完整指南
linux·运维·ubuntu
奇妙之二进制17 小时前
计算机科学导论(10)什么是BIOS
ubuntu·计算机基础
岁月玲珑17 小时前
【如何判断Linux系统是Ubuntu还是CentOS】
linux·ubuntu·centos
Kevin不想说话9261918 小时前
Ubuntu 24.04 安装搜狗输入法完整教程
ubuntu
矩阵老炮1 天前
Ubuntu20.4编译AOSP源码实践
ubuntu·aosp