环境介绍

linux

说明

  1. 为了能够在windowx上的clion 2019.3调试linux上面的代码
    各版本推荐如下:
  • cmake: 2.8.11-3.15.x
  • GDB: 7.8.x-8.3.x
  1. 使用的系统版本
> cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)

> uname -r
3.10.0-1062.9.1.el7.x86_64

linux上安装 cmake

  1. 安装依赖
yum install -y gcc g++ gcc-c++ make automake texinfo wget
  1. 下载解压编译
wget https://cmake.org/files/v3.13/cmake-3.13.4.tar.gz
tar -xf cmake-3.13.4.tar.gz
cd cmake-3.13.4
./configure
make
sudo make install

安装好后的Cmake位于/usr/local/share/cmake-3.13/,可执行程序位于/usr/local/bin/cmake

  1. 为了让CLion能够自动识别,构建软连接。
ln -s /usr/local/bin/cmake /usr/bin/cmake

安装gdb

在安装GDB 前请先安装termcap库,否则在安装gdb时会报该库找不到的错误(configure: error: no termcap library found)。

termcap
wget https://ftp.gnu.org/gnu/termcap/termcap-1.3.1.tar.gz
tar -xf termcap-1.3.1.tar.gz
cd termcap-1.3.1
./configure
make
sudo make install

错误:

错误: 无法验证 ftp.gnu.org 的由 “/C=US/O=Let's Encrypt/CN=R3” 颁发的证书:
  颁发的证书已经过期。

解决方法:

yum install -y ca-certificates

gdb 安装

  1. 卸载预装的gdb
yum remove -y gdb
  1. 下载编译安装
wget http://mirrors.ustc.edu.cn/gnu/gdb/gdb-7.9.tar.xz
tar -xf gdb-7.9.tar.xz
cd gdb-7.9
./configure
sudo make
sudo make install

gdb将被安装到/usr/local/share/gdb目录,可执行程序位于/usr/local/bin/gdb

  1. 为了让CLion能够自动识别,构建软连接。
ln -s /usr/local/bin/gdb /usr/bin/gdb 

在这里插入图片描述

window

基本使用

  1. CLion工具链配置: 找到菜单 File->Settings->Build,Execution->Toolchains.截图如下

在这里插入图片描述
2. windows下安装Clion, 并且创建一个基本项目
在这里插入图片描述

  1. 可以看到自动上传到远程服务器上面了(Upload to Remote Host 上传到远程服务器)
    在这里插入图片描述

  2. 运行的话也是使用远程目录
    在这里插入图片描述

  3. 当然,你也可以手动上传、下载、同步

在这里插入图片描述
6. 如果你不想修改都手动同步服务器的话,你还可以设置自动同步
在Tool - Deployment - Automatic Upload(always) 设置为自动同步
在这里插入图片描述
在这里插入图片描述

  1. 我们在上面(第6和第3)可以看到Remote Host(远程主机),这个是根据第1步自动生成的。我们可以在File->Settings-> Build,Execution->Deployment.看到它
    在这里插入图片描述
    当然,我们也可以手动修改它(比如说重命名之类的,这里不修改,默认即可)。最重要的是我们可以在这里指定将代码同步到远程服务器的哪个目录下:
    在这里插入图片描述
  • 设置本地的代码根目录Local path
  • 设置远程的代码根目录 Deployment path

在这里插入图片描述
8. 如果你想打断点调试的话,还需要如下配置【有错误,不要看,没有解决】

8.2、linux下如下准备
linux安装gdbserver

 yum install gdb-gdbserver

开启远程调试服务

ls
cmake-build-debug  CMakeLists.txt  main.cpp
》 pwd
/home/oceanstar/CLionProjects/untitled
》 mkdir build
》cd build/
》 cmake ..  -DCMAKE_BUILD_TYPE=Debug
》 make
》 gdbserver :1234 ./untitled 
Process ./untitled created; pid = 14984
Listening on port 1234

8.1 windowx如下配置:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后就可以愉快的打断点啦

当然,你有可能遇到这样的错误
在这里插入图片描述
这个时候打开cmd,测试下能不能连接到服务

在这里插入图片描述
原因一般是linux上防火墙没有关闭

systemctl stop firewalld

https://www.jetbrains.com/help/clion/remote-debug.html#launch-remote-debug

Logo

更多推荐