首页 > 后端开发 > C++ > 正文

C++在Windows下使用WSL搭建开发环境

P粉602998670
发布: 2025-09-12 08:26:01
原创
947人浏览过
首先确保Windows版本符合要求并启用WSL,安装Linux发行版后配置C++编译器与VS Code集成,通过Remote-WSL扩展实现开发调试,可安装特定GCC版本、使用GDB或VS Code调试,并优化编译速度,如将项目放在WSL文件系统、调整.wslconfig资源限制及使用ccache缓存。

c++在windows下使用wsl搭建开发环境

在Windows下使用WSL搭建C++开发环境,能让你享受到Linux的便利性,同时又能兼顾Windows的生态。简单来说,就是鱼和熊掌兼得。

首先,确保你的Windows 10版本在2004以上,或者Windows 11。然后,启用WSL和安装Linux发行版。接着,在WSL中安装C++编译器和相关工具。最后,配置VS Code或其他IDE,使其能够与WSL集成。

解决方案

  1. 启用WSL:

    立即学习C++免费学习笔记(深入)”;

    以管理员身份打开PowerShell,运行以下命令:

    wsl --install
    登录后复制

    这会自动安装Ubuntu作为默认的Linux发行版。如果你想安装其他发行版,可以先运行

    wsl --list --online
    登录后复制
    查看可用列表,然后使用
    wsl --install -d <Distribution Name>
    登录后复制
    安装。

  2. 安装C++编译器和相关工具:

    打开你安装的Linux发行版(例如Ubuntu)。更新软件包列表:

    sudo apt update
    登录后复制

    安装build-essential(包含g++、make等):

    sudo apt install build-essential gdb
    登录后复制

    gdb
    登录后复制
    是调试器,强烈建议安装。

  3. 配置VS Code集成:

    在VS Code中安装Remote - WSL扩展。安装完成后,VS Code左下角会出现一个绿色图标。点击该图标,选择“Remote-WSL: New Window”。

    现在,VS Code就运行在WSL环境中了。你可以打开WSL中的文件夹,编辑和编译C++代码。

    创建一个简单的C++程序(例如

    hello.cpp
    登录后复制
    ):

    #include <iostream>
    
    int main() {
        std::cout << "Hello, WSL C++!" << std::endl;
        return 0;
    }
    登录后复制

    编译并运行:

    g++ hello.cpp -o hello
    ./hello
    登录后复制

    如果一切顺利,你应该能在终端看到 "Hello, WSL C++!"。

  4. 其他配置(可选):

    • 安装CMake: 如果你使用CMake管理项目,安装CMake:
      sudo apt install cmake
      登录后复制
    • 配置终端: 可以安装zsh和oh-my-zsh,提高终端使用体验。
    • 共享Windows文件: WSL可以直接访问Windows文件系统,路径在
      /mnt/c/
      登录后复制
      下。

WSL C++开发环境搭建完毕。

如何在WSL中安装特定版本的GCC/G++?

有时候,你可能需要使用特定版本的GCC/G++,而不是默认安装的版本。这在需要兼容特定标准或使用特定库时非常重要。

  1. 添加第三方源:

    可以使用

    ppa
    登录后复制
    (Personal Package Archive)来安装特定版本的GCC/G++。例如,安装GCC 9:

    sudo add-apt-repository ppa:ubuntu-toolchain-r/test
    sudo apt update
    登录后复制
  2. 安装指定版本:

    sudo apt install gcc-9 g++-9
    登录后复制
  3. 切换默认版本(可选):

    如果需要将GCC 9设置为默认版本,可以使用

    update-alternatives
    登录后复制

    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90
    sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 90
    登录后复制

    然后,选择要使用的版本:

    小爱开放平台
    小爱开放平台

    小米旗下小爱开放平台

    小爱开放平台 23
    查看详情 小爱开放平台
    sudo update-alternatives --config gcc
    sudo update-alternatives --config g++
    登录后复制

    现在,当你运行

    gcc --version
    登录后复制
    g++ --version
    登录后复制
    时,应该显示你选择的版本。

如何调试WSL中的C++程序?

调试是开发过程中不可或缺的一部分。在WSL中,可以使用GDB或VS Code进行调试。

  1. 使用GDB:

    编译程序时,添加

    -g
    登录后复制
    选项,以包含调试信息:

    g++ -g hello.cpp -o hello
    登录后复制

    使用GDB调试:

    gdb ./hello
    登录后复制

    GDB常用命令:

    • break <line_number>
      登录后复制
      :在指定行设置断点。
    • run
      登录后复制
      :运行程序。
    • next
      登录后复制
      :执行下一行代码。
    • step
      登录后复制
      :进入函数。
    • print <variable>
      登录后复制
      :打印变量的值。
    • continue
      登录后复制
      :继续执行程序。
    • quit
      登录后复制
      :退出GDB。
  2. 使用VS Code调试:

    VS Code可以方便地配置调试器。

    • 打开VS Code的调试视图(Ctrl+Shift+D)。
    • 点击“create a launch.json file”。
    • 选择“C++ (GDB/LLDB)”。
    • 根据你的项目配置
      launch.json
      登录后复制
      文件。一个简单的配置如下:
    {
        "version": "0.2.0",
        "configurations": [
            {
                "name": "(gdb) Launch",
                "type": "cppdbg",
                "request": "launch",
                "program": "${workspaceFolder}/hello",
                "args": [],
                "stopAtEntry": false,
                "cwd": "${workspaceFolder}",
                "environment": [],
                "externalConsole": false,
                "MIMode": "gdb",
                "setupCommands": [
                    {
                        "description": "Enable pretty-printing for gdb",
                        "text": "-enable-pretty-printing",
                        "ignoreFailures": true
                    }
                ],
                "miDebuggerPath": "/usr/bin/gdb"
            }
        ]
    }
    登录后复制
    • 在代码中设置断点,然后点击调试按钮。VS Code会自动启动GDB并运行程序。

如何解决WSL中C++编译速度慢的问题?

WSL的文件系统性能有时会影响编译速度。特别是当项目文件位于Windows文件系统时。

  1. 将项目文件放在WSL文件系统中:

    将项目文件从

    /mnt/c/
    登录后复制
    移动到WSL的文件系统中,例如
    /home/<username>/projects/
    登录后复制

  2. 使用SSD:

    如果你的Windows安装在机械硬盘上,将WSL迁移到SSD可以显著提高性能。

  3. 调整WSL资源限制:

    可以调整WSL使用的内存和CPU核心数。创建一个

    .wslconfig
    登录后复制
    文件(如果不存在)在你的用户目录下(
    C:\Users\<YourUsername>\.wslconfig
    登录后复制
    ),并添加以下内容:

    [wsl2]
    memory=8GB  # 根据你的需求调整
    processors=4 # 根据你的需求调整
    登录后复制

    然后,重启WSL:

    wsl --shutdown
    登录后复制

    再次启动WSL,新的资源限制就会生效。

  4. 使用ccache:

    ccache
    登录后复制
    是一个编译器缓存,可以显著加快编译速度。安装
    ccache
    登录后复制

    sudo apt install ccache
    登录后复制

    配置

    ccache
    登录后复制

    export CCACHE_DIR="/home/$USER/.ccache"
    export CCACHE_MAXSIZE="10G"
    mkdir -p $CCACHE_DIR
    ccache -M 10G
    登录后复制

    在你的

    .bashrc
    登录后复制
    .zshrc
    登录后复制
    文件中添加以下内容:

    export CCACHE_DIR="/home/$USER/.ccache"
    export CCACHE_MAXSIZE="10G"
    export CCACHE_PREFIX="gcc" # 或 "g++",取决于你的编译器
    export CCACHE_CPP2=true # 如果你使用C++
    登录后复制

    重启终端,

    ccache
    登录后复制
    就会自动缓存编译结果。

通过这些方法,你可以在Windows下使用WSL搭建一个高效的C++开发环境。

以上就是C++在Windows下使用WSL搭建开发环境的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号