当前位置:网站首页>常用工具链和虚拟环境-WSL
常用工具链和虚拟环境-WSL
2022-08-03 01:12:00 【有一点甜】
发散
没想到学习LVGL的第一步,竟然是介绍工具链和虚拟环境吧?哈哈,工欲善其事必先利其器,了解自己的使用工具将事半功倍。先想想,我们的工具大概都运行在哪里?大概就三个:windows、UNIX、Linux。编译出来的程序运行在哪里?大概有四个:windows、UNIX、Linux、嵌入式硬件。也就是说,在windows、UNIX、Linux(大概率都是X86)上运行的程序,直接在其之上部署好开发工具,然后开发就好了。而嵌入式硬件(ARM、RISC-V、PPC、MIPS)上运行的程序,则需要在其它平台上部署开发工具,为啥?因为嵌入式硬件一般连操作系统都没有哇。。。即使有,受限于硬件,大概率也没有丰富的资源让你部署开发工具。因此,交叉工具链环境,就是需要的了。
大概总结了一下,主要有以下需要了解:
- Cygwin
- msys以及msy2
- minGW与MinGW-w64
- WSL
- TDM
- 各版本工具链
WSL是个啥
WSL 2 是微软早在 2017 年推出的 WSL 的原始版本的重大升级。WSL 2 不仅仅是版本的升级。它更快、更通用,并且使用真正的 Linux 内核。未来的 Linux 内核更新甚至会以 Windows 10 软件更新的形式发布。
“添加 WSL 2 为新架构,为 WSL 团队提供了一个更好的平台来提供一些特性,使 WSL 成为在 Windows 中运行 Linux 环境的一种令人惊叹的方式。”
对于我来讲,WSL就是一个windows上的Linux虚拟机,我是把他和virtualBOX,以及VMware来对标的,但是它原生自带,感觉很想尝试,因为它肯定还有我所不了解的优势。
就好像WSA一样,我感觉他就是windows上的andriod虚拟机。
必要条件
- windows版本要新!必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11。
- 一台支持 Hyper-V 虚拟化的计算机
安装WSL2
在 Windows 10 上安装 WSL 2 的过程非常简单:
在管理员 PowerShell 或 Windows 命令提示符中输入此命令,然后重启计算机来安装运行适用于 Linux 的 Windows 子系统 (WSL) 所需的全部内容。
wsl --install命令将启用所需的可选组件,下载最新的 Linux 内核,将 WSL 2 设置为默认值,并安装 Linux 发行版(默认安装 Ubuntu,请参阅下文更改此设置)。
首次启动新安装的 Linux 发行版时,将打开一个控制台窗口,要求你等待将文件解压缩并存储到计算机上。 未来的所有启动时间应不到一秒。
上述命令仅在完全未安装 WSL 时才有效,如果运行 wsl --install 并查看 WSL 帮助文本,请尝试运行 wsl --list --online 以查看可用发行版列表并运行 wsl --install -d 以安装发行版。 若要卸载 WSL,请参阅卸载旧版 WSL 或注销或卸载 Linux 发行版。
安装报错
Installing, this may take a few minutes...WslRegisterDistribution failed with error: 0x800701bcError: 0x800701bc WSL 2 ?????????????????? https://aka.ms/wsl2kernel原因分析:WSL版本由原来的WSL1升级到WSL2后,内核没有升级
下载安装更新:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
再次启动ubuntu子系统即可!或者继续执行: wsl --install -d Ubuntu,等待安装完成。
启动WSL2
怎么启动呢?当然,就是在终端直接输入wsl即可。
WSL2 PK Cygwin
WSL2和Cygwin有何分别?UoW像是一个反过来的wine,差不多是个Linux emulator。原生的Ubuntu应用程序不需要做任何修改,不需要重新编译,就可以直接在WSL2上运行。WSL2可以看成虚拟机+Linux发行版。
而Cygwin所支持的开源应用程序,都是要把源代码拿过来重新编译的。
边栏推荐
猜你喜欢
随机推荐
【社媒营销】Facebook速推帖子如何运作?值得吗?
通力传动递交注册:年营收4.7亿 实控人项献忠家族色彩浓厚
7-Redis工具类
PAT甲级 1051 Pop Sequence
Violence recursion to dynamic programming 08 (pony go chess)
自己做的选择
10大领域5大过程47子过程快速记忆
增删改查这么多年,最后栽在MySQL的架构设计上!
2022年8月2日——使用idea搭建servlet+jsp项目
麒麟信安邀您抢先看 | openEuler 志高远,开源汇智创未来-开放原子全球开源峰会欧拉分论坛最详细议程出炉
8 个常用的 Wireshark 使用技巧,一看就会
ssh(sshd)安全配置
20、商品微服务-web层实现
并发模型和I/O模型介绍
Greenplum database failure analysis, can not listen to the port
全栈---JSONP
开源聚力,共创未来 | 麒麟信安祝贺openKylin首个体验版正式发布!
letcode 第20题-有效的括号
[NCTF2019]SQLi-1||SQL Injection
VS Code 这么牛,再次印证了一句名言









