VScode连接服务器配置c、c++编程环境

server/2024/10/18 18:33:42/

在 VS Code 中配置远程服务器的 C/C++ 编程环境,可以使用 VS Code 的 Remote-SSH 扩展来通过 SSH 连接到远程服务器,并在服务器上编写、编译和调试 C/C++ 代码。

以下是详细的配置步骤:

1. 在本地机器上安装 VS Code 和扩展

  1. 安装 VS Code: 如果你还没有安装 Visual Studio Code,可以从 VS Code 官方网站 下载并安装。

  2. 安装 Remote-SSH 扩展: 打开 VS Code,点击左侧栏的 Extensions(扩展) 图标,搜索 Remote - SSH,并点击 Install(安装) 按钮。

    安装完成后,你将能够通过 SSH 连接到远程服务器

2. 配置 SSH 连接

  1. 生成 SSH 密钥(如果没有,一般不需要,可以跳过): 你需要生成 SSH 密钥并将其复制到服务器,以便 VS Code 可以通过 SSH 连接远程服务器

    在终端中输入以下命令生成密钥:

    ssh-keygen -t rsa -b 2048

    然后使用 ssh-copy-id 将公钥复制到远程服务器

    ssh-copy-id user@remote-server-ip
  2. 配置 Remote-SSH: 点击 VS Code 界面左下角的 >< 图标,然后选择 Remote-SSH: Connect to Host...

    输入 ssh user@remote-server-ip,其中 user服务器的用户名,remote-server-ip服务器的 IP 地址或主机名。

  3. 保存 SSH 配置(可选): 你可以在本地的 ~/.ssh/config 文件中保存 SSH 配置,以简化连接步骤:

    Host myserver HostName remote-server-ip User user IdentityFile ~/.ssh/id_rsa

    然后你可以在 VS Code 中直接选择 myserver 来连接。

3. 在服务器上配置 C/C++ 环境

  1. 安装 GCC 或 Clang: 在远程服务器上,你需要确保安装了 C/C++ 编译器。如果没有,可以使用以下命令安装:

    安装 GCC

    sudo apt update sudo apt install build-essential

    安装 Clang(可选)

    sudo apt install clang

  2. 安装 CMake(可选,用于项目管理): 如果你需要使用 CMake 管理项目,可以安装 CMake:

    sudo apt install cmake

4. 配置 VS Code 的 C/C++ 扩展

  1. 安装 C/C++ 扩展: 打开 VS Code,点击 Extensions,搜索 C/C++,然后点击 Install 安装 Microsoft 提供的 C/C++ 扩展。这个扩展提供了代码智能感知、调试等功能。

    C/C++ Extension

  2. 安装 C/C++ Intellisense 和调试工具(可选): 如果需要更好的代码补全和调试功能,可以安装相关插件,如 C/C++ IntellisenseC/C++ Debugger

5. 配置 C/C++ 编译和调试

  1. 创建工作目录: 在服务器上创建一个工作目录,并通过 VS Code 打开它。例如:

    mkdir ~/cpp_project cd ~/cpp_project

  2. 编写简单的 C/C++ 代码: 在 VS Code 中,创建一个 main.cmain.cpp 文件,写一个简单的 C 或 C++ 程序:

    // main.c 
    #include <stdio.h> 
    int main() {printf("Hello, World!\n"); return 0; 
    }

  3. 创建 tasks.json 文件(用于编译): 在项目根目录的 .vscode 文件夹中,创建一个 tasks.json 文件,用于定义编译任务。比如:

    C程序的tasks.json

    
    { "version": "2.0.0", "tasks": [ { "label": "build C program", "type": "shell", "command": "gcc", "args": ["-g","main.c", "-o", "main" ], "group": { "kind": "build", "isDefault": true }, "problemMatcher": ["$gcc"], "detail": "Generated task for compiling C program." } ] }

    C++程序的tasks.json

    json

    { "version": "2.0.0", "tasks": [ { "label": "build C++ program", "type": "shell", "command": "g++", "args": [ "-g", "main.cpp", "-o", "main" ], "group": { "kind": "build", "isDefault": true }, "problemMatcher": ["$gcc"], "detail": "Generated task for compiling C++ program." } ] }

  4. 创建 launch.json 文件(用于调试): 在 .vscode 目录下创建 launch.json 文件,配置调试环境。比如:

    C/C++程序的launch.json

    json

    { "version": "0.2.0", "configurations": [ { "name": "Debug C Program", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/main", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "preLaunchTask": "build C program", "miDebuggerPath": "/usr/bin/gdb", "logging": { "moduleLoad": false, "trace": false, "engineLogging": false, "programOutput": true, "exceptions": true }, "launchCompleteCommand": "exec-run", "linux": { "MIMode": "gdb" } } ] }

    该文件配置了一个调试 C/C++ 程序的任务,使用 gdb 调试器。

6. 编译和调试 C/C++ 程序

  1. 编译程序: 在 VS Code 中,按下 Ctrl+Shift+B,它将执行你在 tasks.json 中定义的构建任务,编译你的 C/C++ 代码。

  2. 调试程序: 按下 F5 键启动调试器,这将运行你在 launch.json 中配置的调试任务。你可以设置断点、逐步执行代码、查看变量值等。

7.自动格式化

  1. 对于 C/C++,你可以安装 C/C++ 扩展(由 Microsoft 提供),然后设置自动格式化。具体步骤如下:

  2. 安装 C/C++ 扩展

    • 在扩展视图中搜索 C/C++ 并安装。
  3. 设置格式化选项

    • 在设置中搜索 “format on save”,并勾选 Editor: Format On Save
  4. 安装格式化工具(可选):

    • 你可以安装 clang-format,然后在 VSCode 中配置它。
    • 在设置中搜索 “C_Cpp: Clang_format_style”,可以设置为 “file” 或其他风格。

总结

通过 VS Code 连接到远程服务器,你可以像在本地开发一样编写、编译和调试 C/C++ 程序。总结步骤如下:

  1. 安装并配置 Remote-SSH 扩展。
  2. 在远程服务器上安装 GCC/Clang 编译器。
  3. 在 VS Code 中编写 C/C++ 代码,并通过 tasks.json 配置编译任务。
  4. 通过 launch.json 配置调试环境。
  5. 编译、运行和调试你的程序。

这种方式特别适合需要在服务器上进行开发的场景,例如在远程集群或 GPU 服务器上进行开发。如果遇到任何问题或有进一步的疑问,欢迎随时提问!


http://www.ppmy.cn/server/131683.html

相关文章

蓝桥杯备赛(c/c++)

排序 9. 实现选择排序 10. 实现插入排序 11. 实现快速排序 12. 实现归并排序 13. 实现基数排序 14. 合并排序数组

SketchUp Pro 2024 for Mac 3D建模 草图设计大师软件安装【保姆级教程,简单小白轻松上手】

Mac分享吧 文章目录 SketchUp Pro 3D建模 草图设计大师软件 安装完成&#xff0c;软件打开效果一、Mac中安装SketchUp Pro 3D建模 草图设计大师软件——v241️⃣&#xff1a;下载软件2️⃣&#xff1a;安装软件&#xff0c;将安装包从左侧拖入右侧文件夹中3️⃣&#xff1a;应…

文件工具类 - C#小函数类推荐

此文记录的是文件工具类。 /***文件工具类Austin Liu 刘恒辉Project Manager and Software DesignerE-Mail: lzhdim163.comBlog: http://lzhdim.cnblogs.comDate: 2024-01-15 15:18:00***/namespace Lzhdim.LPF.Utility {using System.Collections;using System.IO;/// <…

Python中的策略模式:解锁编程的新维度

引言 策略模式是一种行为型设计模式&#xff0c;允许算法独立于使用它的客户端而变化。这使得我们可以根据不同的情况选择不同的算法或策略来解决问题&#xff0c;从而增强系统的灵活性。在日常开发中&#xff0c;策略模式常用于处理多种算法或行为之间的切换&#xff0c;比如…

数字化转型最佳实践与实施技巧:理论指导与企业应用路径

数字化转型中的最佳实践与实施技巧 企业在实施数字化转型时&#xff0c;面对的最大挑战之一是如何将理论转化为实际可操作的行动。成功的转型不仅依赖于新技术的引入&#xff0c;还涉及如何确保架构蓝图与业务目标一致&#xff0c;如何在确保合规的基础上进行创新&#xff0c;…

前端自定义指令控制权限(后端Spring Security)

1. 新建 directives/auth.ts &#xfeff; &#xfeff; //导入自定义指令 import auth from /directives/auth// 注册全局自定义指令 v-auth app.directive(auth, auth);&#xfeff;1.1完整的authDirective.ts import { wmsStore } from "/store/pinia"// 判断用…

Python 爬取天气预报并进行可视化分析

今天&#xff0c;我们就来学习如何使用 Python 爬取天气预报数据&#xff0c;并用数据可视化的方式将未来几天的天气信息一目了然地展示出来。 在本文中&#xff0c;我们将分三步完成这一任务&#xff1a; 使用 Python 爬取天气数据数据解析与处理用可视化展示天气趋势 让我…

深入理解 Java 中的 ThreadLocal 机制、工作原理、优缺点分析、在数据库连接管理中的应用、用注意事项

在 Java 并发编程中&#xff0c;如何处理线程安全问题是一个非常关键的话题。通常&#xff0c;我们会通过加锁机制来确保多个线程之间的安全访问。但是加锁容易引发性能问题&#xff0c;如死锁和上下文切换。为了解决这些问题&#xff0c;Java 提供了一种 ThreadLocal 机制&…