服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - Mac使用CLion连接Linux进行远程开发

Mac使用CLion连接Linux进行远程开发

2023-11-21 17:05未知服务器之家 Linux

一、背景 笔者有时候需要使用C++开发一些命令行之类的可执行程序放到Linux服务器上部署运行,因为C++天然的跨平台特性, 之前一直都是使用两套开发环境,本地Mac电脑一套,远端Linux一套,在本地开发调试好之后,再到远端Lin

一、背景

笔者有时候需要使用C++开发一些命令行之类的可执行程序放到Linux服务器上部署运行,因为C++天然的跨平台特性, 之前一直都是使用两套开发环境,本地Mac电脑一套,远端Linux一套,在本地开发调试好之后,再到远端Linux进行编译部署测试。

可在最近开发的过程需要使用到一些Linux当中的一些特定的库,如果把这些特定的库移植或编译到本地Mac搭建环境的话必定比较耗时, 而且自己本身才疏学浅,还不一定能搭建成功,于是笔者便萌了使用Clion进行远程开发的想法,说干就是干,不试不知道,搭建成功后用起来那是真的爽...

Mac使用CLion连接Linux进行远程开发

二、远程开发环境搭建

首先这里简单讲下远端Linux主机的开发环境搭建,笔者使用主机是ubuntu系统。

1.安装C++相关编译边境

直接通过一下命令行安装即可:

sudo apt install gcc g++ gdb  -y

安装成功后我们可以通使用命令查看下安装的版本,例如通过命令gcc -v即可查看安装gcc的版本。

2.安装cmake

同样使用apt命令安装一下即可:

 apt install cmake

需要注意的是这里安装的Cmake版本可能有点低,一般来说都会比本地Mac的低不少,建议开发的时候在CMakeLists.txt适当降低使用的Camke版本, 当然如果一定要使用高版本的Cmake,那么你也可以通过其他的途径安装一下高版本的Cmake即可。

3.安装rsync

rsync也是需要安装的,不然在配置Clion进行远端调试的时候会警告rsync没有安装,同样使用apt命令安装即可:

sudo apt-get install rsync xinetd

自此,远端Linux的编译开发环境大致就完成了。

三、本地CLion配置

下面我们说说本地系统的开发工具CLion的配置。

1.配置Toolchains

依次打开 settings -> Build, Execution, Deployment -> Toolchains ,点击 + 号

Mac使用CLion连接Linux进行远程开发

选择 Remote Host,然后点击右侧的小齿轮设置按钮

Mac使用CLion连接Linux进行远程开发

2.配置远端服务器信息

在弹出框中点击 + 号,添加一个服务器,在这里我们需要填入你远端服务器的IP、登陆用户名、登陆密码等相关信息。 填写完毕之后点击一下Test Connection按钮测试一下是否能连接成功。

Mac使用CLion连接Linux进行远程开发

成功连接后点击确定,系统会自动检测远程的gcc、Cmake等相关环境,如果检测成功的话一般就是下图这样子的。

Mac使用CLion连接Linux进行远程开发

此时我们的CLin就有了两套编译环境,一套是本地的默认编译环境,一套是远端的编译运行环境,我们想要用那一套环境就把那套环境移动的第一位即可。

Mac使用CLion连接Linux进行远程开发

至此我们的环境配置就完成了,效果如何?赶紧程序员鼻祖工程Hello World走起...

四、环境测试

直接在本地使用CLion创建一个默认的Hell World工程,发现报错如下:

Mac使用CLion连接Linux进行远程开发

很明显本地使用Cmake最低版本要求是3.21,而Linux的远端Cmake安装的版本最高只支持3.18.4,这个问题在之前安装 Cmake的时候已经提示注意了,要么在CMakeLists.txt降低使用的最低版本,要么升级远端的Cmake,很明显第一种方式简单快捷。

解决掉这个问题后我们伟大的Hello World就能跑起来啦,笔者点击运行成功后在控制台输出如下:

Mac使用CLion连接Linux进行远程开发

其中/tmp/tmp.D7BCB8d9w2/cmake-build-debug/HelloTest就是远端Linux编译的结果产物,我们在远端Linux是可以找到这个文件的。

同时我们还可以直接在本地打断点进行调试,就是这么爽...

Mac使用CLion连接Linux进行远程开发

延伸 · 阅读

精彩推荐
  • Linux用 Sigil 在 Linux 上创建和编辑 EPUB 文件

    用 Sigil 在 Linux 上创建和编辑 EPUB 文件

    Sigil 是一个开源的 Linux、Windows 和 MacOS 上的 EPUB 编辑器。你可以使用 Sigil 创建一个新的 EPUB 格式的电子书,或编辑现有的 EPUB 电子书(以 .epub 扩展结尾的...

    Linux中国10222021-04-26
  • LinuxLinux下怎么给电子邮件加密以防泄露?

    Linux下怎么给电子邮件加密以防泄露?

    网络越来越不安全,很多人会选择加密以防泄露,那么电子邮件要如何加密呢?下面就与大家分享下Linux系统下加密电子邮件的方法,有加密意识的朋友可...

    Linux教程网3152019-10-25
  • Linux在 Linux 中使用 cp 命令

    在 Linux 中使用 cp 命令

    cp 命令是 Linux 中一个重要的命令,你可能经常会用到它。 正如名称所示, cp 代表复制copy,它被用于在 Linux 命令行中复制文件和目录。 这是一个相对简单...

    未知932023-08-12
  • LinuxLinux服务器安全事件应急响应排查方法总结

    Linux服务器安全事件应急响应排查方法总结

    这篇文章主要介绍了Linux服务器安全事件应急响应排查方法总结,本文讲解了分析原则、分析目标、数据备份采集、分析方法、分析影响、加固方法等内容...

    Linux教程网5562019-10-12
  • LinuxLinux下批量Kill多个进程的方法

    Linux下批量Kill多个进程的方法

    Linux下批量Kill多个进程的方法,需要的朋友可以参考下 ...

    Linux教程网12802019-12-27
  • LinuxROS控制Turtlebot3移动机器人的基础教程

    ROS控制Turtlebot3移动机器人的基础教程

    这篇文章主要给大家介绍了关于ROS控制Turtlebot3移动机器人的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值...

    Arcann12762021-01-25
  • LinuxLinux配置时间同步以及国内常用的NTP服务器地址

    Linux配置时间同步以及国内常用的NTP服务器地址

    有时服务器需要调整时区并调整时间,需要用到的命令:ntpdate 一般Linux系统都默认安装了NTP服务,如果没有安装的话,也可以直接使用yum安装,yum安装命令...

    Linux之家15792020-08-13
  • LinuxLinux怎么设置环境变量

    Linux怎么设置环境变量

    本文主要讲解如何在Linux系统中设置环境变量。当您在Linux命令行上键入命令时,您实际是在告诉shell运行指定名称的可执行文件。在Linux中,这些可执行程...

    Linux学习教程9032021-11-23