Clion进行远程调试

在大三下半学期学习Linux高级编程时,老师布置的作业要在linux机器上进行,当时完成的十分艰苦,调试难受的一匹,当时就萌生了这个想法,因为Jetbrains官方文档的晦涩(英语差)不了了之。后来在多方群友的指导下,参悟此法,立地成佛。写下此博客。另:本文采用的是树莓派环境,因为上一篇文章配置的树莓派上的Qt,因此本文也采用树莓派,ubuntu上也是同样的的,毕竟都是Linux环境吗。

CLion配置远程环境。

正常情况下,右边边栏会有RemoteHost按钮,没有可以点击Tools--> Deployment--> Browse RemoeHost设置。

  • 新建连接,选择SFTP模式,为什么选它,emm可能是因为它能传文件吧。

  • 依次填写Host(远程主机名,什么,你不知道?登远程主机输入“ifconfig”)、User name 、Password点击测试,出现Successful即可。别忘了点击OK呦。

  • 选择好要存放的地址。

  • 出现如下即可。

工具链配置

  • 远程机(包括不限于树莓派)安装cmake

    ​ 下载好相关cmake包,

    $:tar -xvf cmake-3.14.6.tar.gz
    $:cd cmake-3.14.6 $:./configure
    $:make
    $:sudo make install $:cmake --version
    cmake version 3.14.6

    当然调试吗, GDB和GCC、G++都是应该有的。

  • 打开设置界面、选择远程工具链,注意填写远程地址。

    cmake安装上面的cmake操作得话,默认安装路径就是/usr/local/bin/cmake.不知道的话可以使用which cmake 获取路径,Debugger这里需要注意的是应使用/usr/bin/gdb.当然在另外安装GDB后,在/usr/local/bin/gdb路径在也有一个gdb,二者都可以使用。我当初在这里使用的是GDBServer。。。emmm。GBD和GDBServer是两种不同的调试方式,使用GDBServer还需要在linux上进行端口的配置。(幸好,在即将出来的2019.3版本的CLion上将简化这个步骤,十分期待啊!!!)

  • 配置cmake的使用环境(这里使用刚配置好的树莓派工具链)。

此时在下图将出现刚配置好的cmake工具,因为我在cmake下配置了两个,一个是在本机Windows下使用,另一个是在远程机上使用,需要时切换即可。

点击debug按钮后,出现如下界面,在debug的控制台界面会显示当前文件在远端的保存位置,此时证明已成功。

Clion + 树莓派/Ubuntu 远程调试的更多相关文章

  1. Win10 + CLion + 树莓派 + QT 远程开发调用Python

    原则:能在一个机器上开发的就不在两台机器上!! 首先需要配置远程QT开发环境 配置Cmake cmake_minimum_required(VERSION 3.14) project(qt_test) ...

  2. Win10+ Clion + 树莓派 + QT进行远程qt程序开发

    环境配置 环境配置 Windows上:QT5 + CLion 硬件上:一只可联网.可ssh连接且装有QT5的树莓派 暂时还没想好... 树莓派安装qt sudo apt-get update sudo ...

  3. 环境搭建--使用pytharm远程调试树莓派

    对于Linux和文本编辑器不那么熟悉的小伙伴来说,直接在树莓派中写程序可谓是痛苦万分.本文将介绍如何使用PyCharm远程调试树莓派,并同步当前python文件到树莓派中. 配置环境 首先要在个人电脑 ...

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

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

  5. CLion远程调试嵌入式开发板程序

    CLion远程调试嵌入式开发板程序 目录 CLion远程调试嵌入式开发板程序 1. 目的 2. 前提条件 3. CLion设置 3.1 设置一个Deployment 3.2 上传需要的目录到目标板子 ...

  6. Linux+CLion+树莓派远程编译时,Cmake编译出现undefined reference to `vtable for MainWindow'的解决办法

    在win+CLion上进行远程qt开发时碰到以下错误: 错误提示: undefined reference to `vtable for MainWindow' 原因:源文件的目录结构有问题?? 解决 ...

  7. Ubuntu远程桌面助手(URDC)

    目前自动驾驶域控制器项目中使用了英伟达的Orin芯片+Ubuntu20.04系统.域控属于典型的Headless设备,开发调试时需要连接显示器(HDMI/DP).鼠标和键盘,或者使用NoMachine ...

  8. PhpStorm XDebug 远程调试

    现在我们自己公司的各种开发和测试服务器,都是使用阿里云的服务器.一些PHP的项目,无法在本地搭建完整的环境,在外网服务器上调试更方便定位问题.发现网上没有完整的关于如何配置PHPStorm和XDebu ...

  9. 在ubunut下使用pycharm和eclipse进行python远程调试

    我比较喜欢Pycharm,因为这个是JetBrains公司出的python IDE工具,该公司下的java IDE工具--IDEA,无论从界面还是操作上都甩eclipse几条街,但项目组里有些人使用e ...

随机推荐

  1. centos7 + postgresql10

    mysql被黑惨了,换了个超复杂的密码都不行,黑客会删除你所有的自定义库,然后插一个warning表,让你给他汇比特币. 提醒大家放在在公网的DB,要非常注意数据的安全性,万一被勒索了,真是mmp了. ...

  2. EF7 在ASP.NET5 RC1版本中数据结构合并的问题

    由于EF版本和asp.net5版本不断更新导致命令出现冲突.最新命令如下: C:\ScrumBasic\ScrumBasic>dnx ef _/\__ ---==/ \\ ___ ___ |. ...

  3. react开发vscode插件推荐

    原文地址:https://github.com/xieqingtian/blog/issues/2 由于本人主要是做react开发,用的代码编辑器是传说中的宇宙第一前端神器vscode, 所以在这里记 ...

  4. 6. Java基本数据类型

    Java 基本数据类型 变量就是申请内存来存储值.也就是说,当创建变量的时候,需要在内存中申请空间. 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据. 因此,通过定义不 ...

  5. 原生js实现选项卡样式切换的几种方式。

    先分享一个不能实现的实例(因为es5没有块作用域) for(var i=0; i<list.length; i++ ) { list[i].onclick = function(){ tabch ...

  6. 微信小程序跳到指定页面不生效

    wx.redirectTo({ url: './index', }) wx.navigateTo({ url: './index', }) 用了这两种都没生效,点击没跳转,也没报错 后来想了下是不是因 ...

  7. 10.SpringMVC注解式开发-处理器方法的参数

    1.逐个参数接收 只要保证请求参数名与该请求处理方法的参数名相同即可 // 请求参数名 与该处理器中的请求方法的参数名相同 ,即可接收前台传递过来的参数 public ModelAndView met ...

  8. 2.2 使用 JAXP 对XML文档进行SAX解析

    使用JAXP 对 XML文档进行 SAX解析: public class Demo1 { /** * 使用JAXP对XML文档进行SAX解析 * @throws Exception * @throws ...

  9. php的小数位数最长多少位

    在php中, echo 0.1234567890123456;exit; // 结果为:0.12345678901235, 整数部分为0时,最多到14位小数,如果后面还有,就自动四舍五入 echo 7 ...

  10. redis—django-redis

    自定义连接池 这种方式跟普通py文件操作redis一样,代码如下: views.py import redis from django.shortcuts import render,HttpResp ...