使用Clion优雅的完全远程自动同步和远程调试c++

摘要:在linux上用vim写C++的时候,通常用gdb进行调试,不能随心所欲的看代码和跳转代码以及加watch(也有可能是因为我还没有get正确的使用方法)。为此我发现Clion可以做到自动同步本场代码或自己下载远程代码同步到本地,以及调试在远程机器上运行的代码,为此记录下来。

简介

CLion 是一款专为开发 C 及 C++ 所设计的跨平台 IDE。 它是以 IntelliJ 为基础设计的,包含了许多智能功能来提高开发人员的生产力,从而提升工作效率 。

环境准备

  • 操作系统: macOS / Windows
  • IDE: CLion
  • 源码路径: Node Master

自动同步

方法二 远程gdbserver的动态连接

gdbserver的还支持动态绑定到已经启动的进程

gdbserver :1234 --attach <PID>
attash成功后

打断点开始调试

开始调试
  • 点击小虫子开始调试
打断点
  • 我们可以看到代码停止到了断点处
  • Variables 是可以自己设置的watch
  • 和正常调试方式一样啦

用CLion完全的在远程工作

这是一个非常非常爽的操作,以后就可以完全的用IDE来写代码了,虽然使用命令行显得比较专业,但是使用工具可以有效的提高工作效率,何乐而不为呢?

设置Toolchains工具链
  • 进入 Preferences | Build, Execution, Deployment | Toolchains
  • 设置远程连接信息,CLion会自动监测CMake gcc g++ gdb的信息
设置cmake
  • 进入Preferences | Build, Execution, Deployment | CMake
  • Toolchain 选择我们刚刚设置的
  • 上面的Automatically reload CMake project on editing 的设置勾上的时候,只要代码有修改就会自动编译
编译成功
  • 现在已经配置了远程Toolchains工具链并配置了相应的CMake配置文件
  • 上图是自动编译和上传到的目录/tmp/tmp.pIdETgMIBR,然后我们只要设置为自动同步目录就成了,如下图
    设置为自动同步目录
  • 现在已经设置成了自动同步目录,只需在运行/调试配置切换器中选择正确的CMake配置文件,即可以完全远程的方式构建,运行和调试应用程序和测试。
添加Application
  • 添加Application来跑我们的程序
    远程运行
  • 远程运行,本地输出结果
    远程调试
  • 远程运行,本地自动调试

总结

  • 配置CLion中的同步信息:同步到哪台机器的哪个目录。
  • 使用 Deployment 让本地和远程可以自动同步和自动下载,手动同步和手动下载代码
  • 配置GDB remote Debug设置
  • 使用gdbserver来启动程序进行调试
  • 使用gdbserver attach依附已经启动的程序进行调试
  • 完全在本地进行远程代码调试

其他

  • 这种方式是不是非常的优雅,这样我们只要不断的添加工具链(Toolchains)就可以在本地应对数不清的远程环境了。
  • 这种方式应该适用于JetBrain全家桶
本站文章资源均来源自网络,除非特别声明,否则均不代表站方观点,并仅供查阅,不作为任何参考依据!
如有侵权请及时跟我们联系,本站将及时删除!
如遇版权问题,请查看 本站版权声明
THE END
分享
二维码
海报
使用Clion优雅的完全远程自动同步和远程调试c++
摘要:在linux上用vim写C++的时候,通常用gdb进行调试,不能随心所欲的看代码和跳转代码以及加watch(也有可能是因为我还没有get正确的使用方法)。...
<<上一篇
下一篇>>