windows10下搭建Linux子系统(配合vs code环境wsl)
一,安装下载ubuntu系统(这里我下的是ubuntu18)自己根据自己的硬件设备区选择适合自己的版本号
打开window的应用商店,在搜索框输入linux,选择版本下载即可,不需要登录账号就可以下载。
点击下载之后就会出现以下截图,不要点击启动,我们配置好环境再来启动即可。
二,环境配置
按住windows+i键打开设置中心,选择更新与安全
打开开发者人员模式,点击,会弹出确认弹框,点击“是”,如图所示。即可打开“开发者模式”
打开控制面板,windows+r打开运行,输入control即可打开控制面板。点击程序与功能,点击右侧的打开或关闭windows功能,
在“启用或关闭Windows功能”页面,找到“适用于Linux的Windows子系统”条目,在前面的框中勾选上,如图所示,然后点击“确定”,会弹出重启对话框,我们点击使电脑重启。
电脑重启后,在应用商店下载页面,找到我们已经下载好的linux系统,然后点击后面的启动按钮,如图所示。
点击启动后出现以下界面,等待以下,等安装完成即可。
在安装过程中可以根据自己额需要去设置用户名和密码。
设置完成后自己进入你设置的用户名下
现在就 可以像linux系统一样使用啦。
在此我们还是要换下源比较好,因为使用linux自带的源感觉很慢,而且有些还会有限制或者找不到软件包的问题。
首先复制一下我们的软件源原始文件
修改文件读写权限,这里设置为可读可写可执行
修改文件内容,根据需要选择适合自己的编辑器打开(vi、nano、gedit)可以注释掉或者直接删除掉原本的文件信息换成以下源。这里是ubuntu18的,如果有别的版本的可以根据自己的情况去换。
ubuntu18
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
ubuntu16
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
ubuntu14
deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse
编辑完保存退出即可,然后更新一下:
更新软件(二选一)
sudo apt-get dist-upgrade
sudo apt-get upgrade
由于包与包之间存在各种依赖关系。upgrade只是简单的更新包,不管这些依赖,它不和添加包,或是删除包。而dist-upgrade可以根据依赖关系的变化,添加包,删除包。
安装gcc gdb
使linux在windows下可以更加方便执行:
三、在windows下试运行
打开windows下的命令行,输入bash 出现以下即可以成功使用。可以看到我们的Linux子系统是挂载在mnt目录下的,那么我们怎么才可以去到linux的文件系统呢?
在运行窗口下,我们输入:\\wsl$
即可来到linux下的文件,我们可以看到linux下的所有文件内容。
四、安装vs code
官方下载地址:https://code.visualstudio.com/Download
选择自己的系统版本去下载安装
至于安装的细节,由于我是之前就安装好了,这里就不赘述了,具体细节可以参考别人的博客。
安装完之后我们需要再打开vscode做以下简单的配置,安装wsl,c/c++插件,具体步骤是点击右侧的田字格,然后再上面的搜索框依次输入wsl和c/c++出现中间的插件之后,点击install就可以了。
安装完成之后,我们就通过linux命令行来启动我们的vs code软件了。若是要在vs code下编辑和运行c文件,我们还需要进行以下配置。
打开vs 左下角的设置,接下来如图操作
打开文件后输入下面这句:
"terminal.integrated.shell.windows": "C:\\\\Windows\\\\System32\\\\wsl.exe",
搞完之后我么就可以在vs下编辑和运行c文件啦。打开终端,就可以直接使用linux命令去执行和编译我们的文件了。
编译实例:
mqtt客户端:
#include </home/zzl/3rdlib/include/MQTTAsync.h>//需要修改成你自己的
#include <stdio.h>
#include <unistd.h>
#include <string.h>
#define SERVER "127.0.0.1"
void onConnect(void *context,MQTTAsync_successData* response)
{
printf("Succeed in connecting to mqtt-server!\n");
}
void disConnect(void *context,MQTTAsync_failureData* response)
{
printf("Failed to connect mqtt-server!\n");
}
int main()
{
MQTTAsync client;
int ret;
char clientId[]="zzl";
MQTTAsync_connectOptions options = MQTTAsync_connectOptions_initializer;//初始化连接选项
ret=MQTTAsync_create(&client,SERVER,clientId,MQTTCLIENT_PERSISTENCE_NONE,NULL);
if(ret!=MQTTASYNC_SUCCESS)
{
printf("Cannot create mqtt client!\n");
return -1;
}
options.onSuccess=onConnect;
options.onFailure=disConnect;
options.username="test";//设置用户名密码需要修改成你自己的
options.password="123";
ret=MQTTAsync_connect(client,&options);
if(ret!=MQTTASYNC_SUCCESS)
{
printf("Cannot start connect!\n");
return -1;
}
getchar();
return 0;
}
编译:
gcc -o test test.c -I ~/3rdlib/include/ -L ~/3rdlib/lib/ -lpaho-mqtt3a
./test
结果:显示为成功连接
至此完成全部工作。
下一篇:我将来介绍在此环境下来搭建我们的mqtt服务器。