远程C/C++开发环境一次配齐:Trae IDE 搭建与依赖部署指南

文章配图

1 ~> AI 编程辅助工具体系

1.1 AI 编程插件类

1.1.1 核心定位

这类工具以 IDE 插件的形式存在,借助现有编辑器的底座提供 AI 编码增强,主流产品都能在 VS Code 与 JetBrains 系列 IDE 上使用。

1.1.2 主流产品参数

插件名称 支持平台 核心能力
GitHub Copilot VS Code、JetBrains IDEs 等 实时代码补全、Copilot Chat 对话、多语言上下文感知、测试用例生成
Fitten Code VS Code、JetBrains IDEs 等 代码补全、Bug 静态检测、注释生成、单元测试自动生成
Cline VS Code 项目级文件读写、命令行任务执行、浏览器环境集成、权限确认机制、任务链编排
通义灵码 VS Code、JetBrains IDEs、独立 IDE 多文件批量修改、MCP 工具链调用、行间会话、个性化记忆体系

1.2 命令行终端类 AI 编程工具

1.2.1 核心定位

不需要图形化 IDE,直接在终端里跟大模型对话,适合服务器运维、纯终端开发这类场景。

1.2.2 主流产品参数

工具名称 核心功能 支持模型
Claude Code 长文档分析与逻辑推理、代码生成与安全审查、最高 200K 长上下文、自然语言交互 Claude 3 系列
Gemini CLI 终端内对话、代码生成与错误解释、通用文本处理、多模态文件传输 Gemini-2.5-pro

1.3 AI 原生编程 IDE

1.3.1 技术共性

它们全部基于 VS Code 的开源内核做二次开发,操作逻辑与 VS Code 高度一致。
* 支持直接导入 VS Code 配置,用户迁移成本极低
* 深度集成大模型,提供全项目级 AI 开发能力,能力强于普通插件

1.3.2 主流产品参数

IDE 名称 出品方 核心特性 内置模型
Cursor - 代码自动生成、智能补全、Bug 修复、多文件编辑、自然语言命令 Claude、GPT-4、Gemini 等
IDX 谷歌 云端 VS Code 体验、内置 Android 模拟器与 Firebase、全栈应用一键部署 深度集成 Gemini 家族
Kiro 亚马逊 需求管理、自动化开发、代码修改预览、即时撤销、Agentic Chat Claude-Sonnet-4、Claude-Opus-4
Trae 字节跳动 国内访问稳定、内置 Remote SSH、Agent 自动编程、智能补全问答 DeepSeek、Doubao、Kimi、Qwen 等
Qoder 阿里巴巴 代码库全景理解、智能结对编程、Quest 模式、长短期记忆系统 Claude、GPT、Gemini 等
CodeBuddy 腾讯 设计稿转代码、全栈开发、内置腾讯云服务、一键部署分享 腾讯混元、DeepSeek 等

1.3.3 选型依据

本项目最终选了 Trae IDE,核心原因是国内网络访问稳定、基础功能免费,而且原生内置 Remote SSH,不需要额外装插件。

文章配图


2 ~> Trae IDE 环境配置

2.1 产品定位

Trae IDE 是基于 VS Code 内核、与 AI 深度集成的开发工具,提供智能问答、代码自动补全以及基于 Agent 的 AI 自动编程能力,支持本地开发与远程开发两种模式。

补充: Trae 自身不携带编译、链接工具链,编译构建能力完全依赖宿主环境的 gcc、cmake 等系统工具。

2.2 安装与远程连接

2.2.1 基础信息

  • 官方地址:
  • 官方文档:
  • 下载页面:
  • 兼容系统:macOS、Windows 10/11、Linux

2.2.2 Remote SSH 能力

  • Trae 内置 Remote SSH 组件,无需额外安装插件即可连接远程 Linux 主机
  • 连接流程:选择「连接远程主机」→ 输入ssh 用户名@IP地址 → 验证密码 / 密钥完成登录
  • 连接成功后,终端与文件管理器均对应远程主机环境

2.3 C/C++ 远程开发必备插件

远程开发模式下,以下插件的服务端安装在远程主机,为 C/C++ 项目提供语法与构建支持。

2.3.1 clangd 插件

  • 定位:C/C++ 语言服务插件
  • 核心功能:
    • 语法高亮与智能代码补全
    • 实时静态检测:语法错误、类型不匹配、符号未定义
    • 代码导航:快速跳转变量 / 函数定义与引用
    • 悬停提示:显示函数签名、参数说明与注释文档

2.3.2 CMake Tools 插件

  • 定位:CMake 构建系统集成插件
  • 核心功能:生成构建配置、编译器选型、构建目标管理、一键编译与调试

3 ~> C++ 第三方依赖库体系

3.1 基础工具链

文章配图

3.1.1 build-essential

  • 作用:Ubuntu 编译基础元包,包含 gcc、g++、make 等核心编译工具

3.1.2 cmake

  • 作用:跨平台构建工具,用于生成项目编译配置与管理构建流程

3.1.3 pkg-config

  • 作用:编译辅助工具,自动查找第三方库的头文件路径与链接参数

3.1.4 curl

  • 作用:命令行网络请求工具,用于测试 HTTP/HTTPS 接口、验证 API 连通性

3.2 业务功能库

3.2.1 gflags

  • 定位:谷歌开源命令行参数解析库
  • 系统安装包:libgflags-dev

3.2.2 spdlog

  • 定位:高性能 C++ 日志库,以 header-only 模式为主
  • 系统安装包:libspdlog-dev

3.2.3 fmt

  • 定位:现代 C++ 格式化库,类型安全,易用性与性能优于 printf 与 iostream
  • 系统安装包:libfmt-dev

补充: 禁止安装fmt包,该包仅为运行时库,不含开发头文件与静态库。

3.2.4 jsoncpp

  • 定位:C++ JSON 解析与序列化库
  • 系统安装包:libjsoncpp-dev
  • 标准头文件引入:#include <jsoncpp/json/json.h>

3.2.5 libssl-dev

文章配图

  • 定位:OpenSSL 开发包,提供 SSL/TLS 协议实现
  • 作用:支撑 HTTPS 通信、数据加密解密等安全功能

3.2.6 gtest

  • 定位:谷歌开源 C++ 单元测试框架
  • 系统安装包:libgtest-dev(仅含源码,需手动编译生成静态库)

3.2.7 cpp-httplib

  • 定位:轻量级 C++ HTTP 客户端 / 服务端库,纯 header-only 实现
  • 部署方式:直接拷贝头文件至系统 include 目录或项目源码目录

4 ~> 环境部署全流程与验证

4.1 第一步:更新源与安装基础工具链

执行路径:任意目录,推荐家目录 ~

sudo apt update

sudo apt install -y build-essential cmake pkg-config curl

4.2 第二步:安装 apt 可直接获取的开发库

sudo apt install -y libgflags-dev

sudo apt install -y libspdlog-dev

sudo apt install -y libfmt-dev

sudo apt install -y libjsoncpp-dev

sudo apt install -y libssl-dev

sudo apt install -y libgtest-dev

4.3 第三步:手动编译安装 GTest

文章配图

补充: 以下为标准外源码构建方案,优于原文档的源码内构建,不会污染源码目录。

cd /usr/src/gtest

sudo mkdir build && cd build

sudo cmake ..

sudo make

sudo cp lib/*.a /usr/lib/

cd ~

4.4 第四步:安装 cpp-httplib

4.4.1 官方直连方式(网络通畅环境)

cd /tmp
git clone 
cd cpp-httplib
sudo cp httplib.h /usr/include/
cd ~

4.4.2 国内加速方式(国内环境推荐)

cd /tmp

git clone 
cd cpp-httplib
sudo cp httplib.h /usr/include/
cd ~

4.4.3 备选方案

  • 手动下载 ZIP 包上传至远程主机,解压后拷贝头文件
  • 直接将httplib.h放入项目源码目录,使用#include "httplib.h"相对路径引入

4.5 第五步:环境完整性验证

4.5.1 创建测试代码 test.cpp

#include <gflags/gflags.h>
#include <spdlog/spdlog.h>
#include <fmt/core.h>
#include <jsoncpp/json/json.h>
#include <httplib.h>
#include <gtest/gtest.h>
#include <iostream>

DEFINE_string(name, "world", "Your name");

文章配图

int main(int argc, char* argv[]) {

    gflags::ParseCommandLineFlags(&argc, &argv, true);
    std::cout << "Hello " << FLAGS_name << std::endl;

    spdlog::info("spdlog works!");

    std::string msg = fmt::format("fmt says: {}", 42);
    std::cout << msg << std::endl;

    Json::Value root;
    root["key"] = "value";
    std::cout << "jsoncpp: " << root.toStyledString() << std::endl;

    httplib::Client cli(");
    std::cout << "httplib header included successfully." << std::endl;

    EXPECT_EQ(1, 1);
    std::cout << "gtest linkage verified." << std::endl;

    return 0;
}

4.5.2 编译与运行命令

g++ test.cpp -lgflags -lspdlog -lfmt -ljsoncpp -lgtest -lgtest_main -pthread -o test

./test --name=Trae

4.5.3 成功标准输出

Hello Trae
[2026-08-16 00:20:30.810] [info] spdlog works!
fmt says: 42
jsoncpp: {
    "key" : "value"
}

httplib header included successfully.
gtest linkage verified.

上面的内容全部输出,就说明所有依赖库都已装好、链接正常,开发环境就绪。

4.6 补充:curl 接口测试示例

补充: 以下为可直接运行的标准写法。

curl  \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <DeepSeek API Key>" \
  -d '{
    "model": "deepseek-chat",
    "messages": [
      {"role": "system", "content": "You are a helpful assistant."},
      {"role": "user", "content": "Hello!"}
    ],
    "stream": false
  }'

结尾

uu们,本文的内容到这里就全部结束了,艾莉丝在这里再次感谢您的阅读!

0

评论0

请先
显示验证码
没有账号?注册  忘记密码?