Clion配置与使用记录

news2024/11/19 3:16:50

Clion与ROS2、docker

为了能够在Docker中使用ROS2环境,同时Clion能够在编辑代码时可以有代码提示以及函数、变量跳转等功能

Docker配置

参考:Docker SSH配置

  1. 启动Docker,需要将端口映射,添加如下参数:
    • -p 8024:22:设置端口映射,将tcp22端口转发到8024
  2. 进入Docker
  3. 设置 root 账户密码
passwd root
1.输入密码
2.再次输入密码
  1. 安装openssh
apt update
apt install -y openssh-server
  1. ssh配置
vim /etc/ssh/sshd_config

Port 22                     #开启22端口
PermitRootLogin yes         #允许root用户使用ssh登录
RSAAuthentication yes       #启用 RSA 认证
PubkeyAuthentication yes    #启用公钥私钥配对认证方式
AuthorizedKeysFile          .ssh/authorized_keys .ssh/authorized_keys2      #公钥文件路径
  1. 重新启动ssh服务
service ssh restart
  1. 验证端口映射
docker port [CONTAINER ID] 22

#输出如下
docker port CONTAINER ID 22
0.0.0.0:8023

Clion配置

  1. clionToolchains中添加一个Remote Host
    在这里插入图片描述

编译

  • 在编译命令中,添加-DCMAKE_EXPORT_COMPILE_COMMANDS=ON -G Ninja
colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release  -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -G Ninja --packages-up-to xxxxx

加载工程

参考:ROS2 setup tutorial

  • 打开工程中的compile_commands.json
    在这里插入图片描述
  • 点击Open as project
    在这里插入图片描述
  • 检查工程是否加载成功
    在这里插入图片描述
  • 改变工程的根目录:Tools | Compilation Database | Change Project Root
    在这里插入图片描述
    to
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/799577.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis-基于内存的key-value结构数据库

读写性高,适合存储热点性高的数据 也称为结构化的NoSql数据库 redis依赖环境:gcc NoSql 非关系型数据库,是关系型数据库的补充 关系型(RDBMS)非关系型(NoSql)MySqlRedisOracleMongo dbDB2MemCachedSQLServer 常用命令 Redis 教程_redi…

手机中有三个特别耗电的功能,半天就耗掉一半电量,记得关掉

在现代社会,手机已经成为我们生活中不可或缺的伙伴。然而,随着手机功能的日益强大和应用的多样化,电池续航成为了许多人的困扰。您是否曾经经历过使用手机一半时间,电量却已经耗掉一半的情况?若是如此,可能…

Pytorch图像处理注意力机制SENet CBAM ECA模块解读

目录 1. 注意力机制 1.1 SENet(Squeeze-and-Excitation Network) 1.1.1 SENet原理 1.1.2 SENet代码示例 1.2 CBAM(Convolutional Block Attention Module) 1.2.1 CBAM原理 1.2.2 CBAM代码示例 1.3 ECA(Efficien…

Vue中TodoLists案例_底部统计

与上一篇Vue中TodoList案例_删除有俩个文件变化了 App.vue&#xff1a;向儿子组件MyFooter传递参数todos <template><div id"root"><div class"todo-container"><div class"todo-wrap"><MyHeader :addTodo"add…

每天一道C语言编程(递归:斐波那契数,母牛的故事)

递归的条件 递归函数必须有一个可直接退出的条件&#xff0c;否则会进入无限递归&#xff0c;例如 #include<stdio.h> void f(int n) {if(n<0)return;f(n-1);printf("%d ",n); }int main() {int n5;f(n);return 0;}//递归的出口 if(n<0) retur…

【docker】docker部署nginx

目录 一、步骤二、示例 一、步骤 1.搜索nginx镜像 2.拉取nginx镜像 3.创建容器 4.测试nginx 二、示例 1.搜索nginx镜像 docker search nginx2.拉取nginx镜像 docker pull nginx3.创建容器&#xff0c;设置端口映射、目录映射 # 在root目录下创建nginx目录用于存储nginx数据…

花色更潮的夜光飞盘,手感也很出色

飞盘运动因为易于入门&#xff0c;方便操作&#xff0c;一直以来都备受大家的喜爱&#xff0c;而近几年更是成为了一项非常流行的户外运动。每天玩上一局飞盘&#xff0c;不仅可以锻炼身体&#xff0c;还能够增强团队合作意识&#xff0c;让大家在运动中尽情享受乐趣。 这两天我…

【树上点对问题】Tree Problem

Problem - D - Codeforces 题意&#xff1a; 思路&#xff1a; 一个很裸的树形DP 对于树上的一对点&#xff0c;我们往往考虑更换枚举对象 如果关注的是路径经过边&#xff0c;那么就考虑一条边两端的连通分量 如果关注的是路径经过点&#xff0c;那么分成两部分考虑 一部…

郑州如何为SSL证书续期

SSL数字证书的主要作用就是保护网站传输数据安全&#xff0c;而我们要知道SSL证书是有时间限制&#xff0c;到期之后就会失效&#xff0c;对网站传输数据的加密保护也会失效&#xff0c;这就需要我们在失效前为SSL证书续期。那么我们该如何为SSL证书续期呢&#xff1f;今天随SS…

uniapp实现带参数二维码

view <view class"canvas"><!-- 二维码插件 width height设置宽高 --><canvas canvas-id"qrcode" :style"{width: ${qrcodeSize}px, height: ${qrcodeSize}px}" /></view> script import uQRCode from /utils/uqrcod…

断路器分合闸速断试验

试验目的 高压断路器的分、 合闸速度是断路器的重要特性参数, 反映出断路器的操动机构 与传动机构在分、 合闸过程中的运动特征。 断路器分、 合闸速度超出或者低于规定值 均会影响断路器的运行状态和使用寿命。 断路器合闸速度不足, 将会引起触头合闸振 颤, 预击穿时间过长。…

互联网医院小程序源码|互联网+智慧医院解决方案

随着互联网技术的迅猛发展&#xff0c;互联网医院系统开发逐渐受到人们的关注和需求。互联网医院系统是将传统医院服务与互联网技术相结合的创新模式&#xff0c;通过互联网平台为患者提供在线诊疗、预约挂号、药品配送等医疗服务。下面就来介绍一下互联网医院系统开发的优势。…

【宝藏系列】20个常用的Python技巧

【宝藏系列】20个常用的Python技巧 文章目录 【宝藏系列】20个常用的Python技巧&#x1f349;文末推荐【Python之光】 Python的可读性和简单性是其广受欢迎的两大原因&#xff0c;本文介绍20个常用的Python技巧来提高代码的可读性&#xff0c;并能帮助你节省大量时间&#xff0…

Python实现指定区域桌面变化监控并报警

在这篇博客中&#xff0c;我们将使用Python编程语言和一些常用的库来实现一个简单的区域监控和变化报警系统。我们将使用Tkinter库创建一个图形界面&#xff0c;允许用户选择监控区域&#xff0c;并使用OpenCV库进行图像处理和相似性比较&#xff0c;以检测区域内的变化&#x…

MySQL基础扎实——MySQL数据库中的MySAM和InnDB的区别

MySAM和InnoDB是MySQL数据库中两种常见的存储引擎。 MySAM&#xff08;MyISAM&#xff09;是MySQL早期版本中默认的存储引擎&#xff0c;它采用表级锁定的机制&#xff0c;适用于读操作较多、写操作较少的场景。下面是MySAM和InnoDB的区别&#xff1a; 事务支持&#xff1a;My…

【树上乘法原理】ICPC Shanghai 2021 G, Edge Groups

http://oj.daimayuan.top/course/8/problem/400 题意&#xff1a; 思路&#xff1a; 求方案数&#xff0c;考虑组合数学 手摸一下样例发现&#xff0c;对于一棵子树&#xff0c;若边数为偶数&#xff0c;那么可以内部匹配&#xff0c;但是如果边数为奇数&#xff0c;那么就一…

使用SpringBoot替代Nginx发布Vue3项目

目录 一、新建一个SpringBoot项目 二、将Vue项目打包 三、打包文件放到SpringBoot中 四、配置反向代理 五、启动项目 六、集成案例 一、新建一个SpringBoot项目 &#xff08;博主SpringBoot版本2.7.14&#xff09; <dependency><groupId>org.springframewor…

深度学习算法的计算量

文章目录 一、FLOPs与FLOPS二、参数量parameters三、Latency与FPS四、结论 一、FLOPs与FLOPS 二、参数量parameters 三、Latency与FPS 四、结论

运算放大器(二):恒流源

一、实现原理 恒流源的输出电流能够在一定范围内保持稳定&#xff0c;不会随负载的变化而变化。 通过运放&#xff0c;将输入的电压信号转换成满足一定关系的电流信号&#xff0c;转换后的电流相当一个输出可调的简易恒流源。 二、电路结构 常用的恒流源电路如下…

16位S912ZVML32F3MKH、S912ZVML31F1WKF、S912ZVML31F1MKH混合信号MCU,适用于汽车和工业电机控制应用。

S12 MagniV微控制器是易于使用且高度集成的混合信号MCU&#xff0c;非常适合用于汽车和工业应用。S12 MagniV MCU提供单芯片解决方案&#xff0c;是基于成熟的S12技术的完整系统级封装 (SiP) 解决方案&#xff0c;在整个产品组合内软件和工具都兼容。 S12 MagniV系统级封装 (S…