windwos 下使用wsl 编译c/c++

微软前段时间推出了wsl子系统可以在windows中运行linux系统。目前支持的linux发行版有
image.png

。使用场景是什么呢?个人猜测应该是代替虚拟机和双系统,在没有wsl之前如果是做linux开发装个虚拟机时必须的事。虚拟机安装配置比较麻烦wsl要比虚拟机方便点启动速度也更快。不过在装的时候遇到过几个坑使得使用wsl没有想象中的那么丝滑。再次记录下来以免日后忘记。
打开微软软件商店搜索wsl 安装ubuntu ,安装完成之后会在开始菜单多出ubuntu图标


image.png

这个时候打开是打不开的需要去设置->应用->程序和功能->启用或关闭Windows功能找到
image.png
然后勾选上才可以。这是再点击就可以打开,到这wsl就安装完成。

我安装wsl的目的是写linux socket代码windows下的socket和linux下的是不一样的又不想安装虚拟机和双系统,看到CLion 支持wsl编译就有了使用wsl的想法。想在Windwos用CLion编译linux代码还需要做些其他的配置首先要先要打开ssh。

sudo apt-get install openssh-server
sudo vim /etc/ssh/sshd_config

sshd_config 有几处要改的地方

Port 2222 #ssh server 监听端口可以随便改个不要用22
ListenAddress 0.0.0.0
PasswordAuthentication yes # 允许密码登录

保存重启sshd服务,安装开发套件

sudo apt install build-essential
sudo apt install cmake

到这里环境就准备完毕了但是还有一个坑,就是CLion会报CMake错误,网上有人说把所有删掉重装就会好,我没尝试毕竟太麻烦了万一还是不行就烦躁了,最终在jetbrains论坛找到解决方案

  1. 在 /etc/ 目录下创建一个 wsl.conf 文件内容为:

/etc/wsl.conf

[automount]
options = "metadata"
enabled = true

  1. 重启 wsl
    wsl.exe -t Ubuntu // (或者其他的发行版比如. Debian)

    完事!最终的效果是
    image.png

    运行一个hello world
    image.png

你可能感兴趣的:(windwos 下使用wsl 编译c/c++)