本地clion开发/优雅地调试,并实时同步远程服务器

实现本地Clion写项目,远程连接Ubuntu服务器,并将本地所做的修改实时同步到Ubuntu上

一、Ubuntu服务器

  • 开启sshd服务
sudo systemctl status sshd

在这里插入图片描述

  • 安装工具链,g++,gcc,make,cmake,gdb,(apt install安装的版本不符,就去搜其他方式安装适合的版本)
sudo apt install gcc g++ make cmake gdb -y

二、本地Win10

文件 -> 设置 -> 构建、执行、部署 -> 工具链 -> 点+添加远程服务器
在这里插入图片描述
名称:便于自己区分哪个服务器即可
凭据:点击后方齿轮进行ssh配置,在下方介绍
Cmake,Make,C编译器,C++编译器,调试器:填完凭据后,这些工具链CLion会自动搜索,若找不到就自己填一下路径

ssh配置,点+添加:
在这里插入图片描述
主机:远程Ubuntu服务器的ip,用ifconfig查看
端口:默认22,也可以修改服务器的/etc/ssh/sshd_config来修改端口
用户名:服务器上登录的用户名
输入用户名的密码后,点测试连接进行验证

  • CMake配置:
    在这里插入图片描述
    点+添加两个配置,分别是Debug和Release:
    名称:分别为cmake-Debug和cmake-Release
    构建类型:分别是Debug和Release
    工具链:选择上文配置的Ubuntu服务器工具链
    构建目录:和名称相同即可
    其余默认即可

  • 部署远程同步:
    在下方选择刚才的Ubuntu服务器为默认服务器
    在这里插入图片描述
    此时,Clion会自动将本地所做的修改同步到Ubuntu的/tmp/下某个目录,我们可以自定义这个位置。
    文件 -> 设置 -> 构建、执行、部署 -> 部署 -> +添加一个,选择SFTP,分别按下面三张图填写连接映射排除的路径
    在这里插入图片描述
    类型:SFTP
    ssh配置:上面新添加的Ubuntu服务器
    根路径:/
    web服务器URL:没填
    在这里插入图片描述
    映射指将本地的什么目录和Ubuntu的什么目录同步,为了方便F:\coder\下的其它新项目使用,Ubuntu上的部署路径采用和本地一样的目录结构(放在了/mnt/下),需要将整条部署路径的权限chmod 777,否则本地作的修改同步不到Ubuntu上
    在这里插入图片描述
    排除的路径:这些路径不会被自动同步

  • 手动同步(拉取或推上去)
    在这里插入图片描述
    在需要同步的文件/目录右键 -> 部署 -> 上传/下载即可

  • 自动实时同步
    为了方便,我设置了自动同步:
    工具 -> 部署 -> 自动上传
    在这里插入图片描述
    如果自动上传时,不小心改错东西了,也可以恢复,参考CLion精华笔记

三、优雅地远程GDB调试
实现本地写代码,本地调试;实际都是用的远程的工具链
可以参考优雅地远程gdb调试

  • 本地在clion中添加一个用于gdb远程调试的配置:
    在这里插入图片描述
    点+ -> 远程调试在这里插入图片描述
    需要注意的是:
    ‘target remote实参’:tcp:Ubuntu的ip:指定一个端口,这个端口是下面Ubuntu服务器要监听的端口
    路径映射:分别填本项目在本地和远程的同步目录
    其它项照着图片填即可

  • 远程Ubuntu设置远程配置

方法一、 远程gdbserver的启动

假设代码的根目录:/mnt/clion-shared/coder/algorithm/Acm/,我们首先在clion中打开终端,选择我们的远程服务器:
在这里插入图片描述
远程调试依赖gdbserver的来支持,通过gdbserver的启动的程序,会先等待远程调试的连接,连接成功后再启动进程。可以在上面打开的终端中输入如下命令,使Ubuntu启动一个进程开始监听(监听的正是上文我们设置的1234端口):

cd /mnt/clion-shared/coder/algorithm/Acm/build
cmake .. -DCMAKE_BUILD_TYPE=Debug
make
gdbserver :1234 ./Acm

在这里插入图片描述

  • 本地打断点,点小虫子开调试即可,可以在本地clion观察变量的值,以及本地终端观察打印的值
    在这里插入图片描述
    在这里插入图片描述
  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值