win10下使用wsl配置Clion toolchain

前言

为什么要使用wsl来配置呢?因为我个人感觉这个比较方便,不用安装一堆包。直接敲命令就好。

准备工作

安装好Clion后,打开toolchain是这样的。

前提是先装好wsl

选择wsl toolchain

会出现下面这个情况

这是因为wsl没有配置ssh服务

配置wsl的ssh

sudo vi /etc/ssh/sshd_config

把密码认证的no改为yes

PasswordAuthentication yes

restart ssh

sudo service ssh restart

如果出现以下提示

则需要生成key

sudo dpkg-reconfigure openssh-server

查看ssh运行状态

service ssh status

configure remote credentials

配置编译环境

在wsl里面执行

sudo apt-get install build-essential gcc g++ cmake gdb

配置完后怎么验证

工具链页面不报红只能说 CLion 找到了部分程序,最好再建一个最小 CMake 项目完整跑一遍。检查 cmake、编译器和 gdb 的路径是否都位于 WSL 环境,然后执行构建、运行和断点调试。如果只能编译、不能调试,通常是 gdb 未安装、版本无法被 IDE 识别,或者调试会话被权限限制。

项目目录的位置也会影响体验。WSL 2 下在 Linux 文件系统中编译大量小文件,通常比在 /mnt/c 中反复跨文件系统读写更稳定。如果 CMake 配置非常慢,可以先把项目移到 WSL 的 home 目录做一次对比,不要一上来就怀疑是 CLion 卡死。

WSL 1、WSL 2 与新版 CLion

这篇文章写作时,CLion 的 WSL 支持更接近“通过 SSH 连接一台本机 Linux”,所以需要手动配置 sshd。后来的 CLion 和 WSL 2 已经改进了集成方式,部分版本可以直接识别已安装的 WSL 发行版,不再要求用户自己维护 SSH 凭据。

因此,如果新版 IDE 里已经出现了可直接选择的 WSL Toolchain,应先使用官方内置流程,而不是继续修改 sshd_config。只有在 IDE 确实要求 Remote Credentials,或者使用的是旧版 CLion 时,本文的 SSH 配置才是必要步骤。

几个排错点

  • sudo service ssh restart 失败时,先用 sudo sshd -t 检查配置语法,避免反复重启却看不到真正原因。
  • CLion 找不到 CMake 时,用 which cmakecmake --version 确认 WSL 端安装结果。
  • Windows 防火墙或端口冲突可能导致 SSH 连接失败,但不要为了省事长期暴露弱密码服务。
  • 项目中硬编码的 Windows 路径、大小写差异和 CRLF 换行,都可能在 WSL 编译时暴露问题。

用 WSL 做工具链的价值,是在 Windows 桌面上保留 IDE 体验,同时让编译和运行环境尽量靠近 Linux。把边界想清楚之后,排错也会简单很多。

可用性说明:本文发布于 2019 年 3 月,距今已超过五年。文中涉及的软件版本、接口、下载地址、命令参数和操作界面可能已经发生变化,部分方案在当前环境下可能失效。请结合官方最新文档核对后再操作,生产环境使用前务必先行验证。

版权声明: 本文首发于 指尖魔法屋-win10下使用wsl配置Clion toolchainhttps://blog.thinkmoon.cn/post/275-config-guide-win10-wsl/) 转载或引用必须申明原指尖魔法屋来源及源地址!