Windows开发环境搭建指南

Windows开发环境搭建

本文以Windows10为例,Windows11也可以,目前都在用
搭建开发环境主要是c++,python,目前不涉及其他的
不使用IDE,vscode YYDS

前言

工欲善其事,必先利其器。

不论是学习、工作、换电脑、换工作,都需要重新把新的一台机器变为能够开发代码的状态,而环境的好坏,极大影响着开发效率的高低。

1. x86架构,intel/amd CPU,Windows系统

提这个主要是为了明确指令集、cpu、os的层级关系,也就是指令集和cpu都是硬件决定的,x86架构不可能运行arm架构的程序

  1. 如果编译出arm架构的文件,只能连一个手机,使用adb shell运行程序
  2. 如果使用了intel的SSE、AVX指令集,或者,amd的AMD-V、XOP指令集,那么就只能在自家cpu上运行
  3. 如果编译的文件格式为Windows的,也就是exe或者dll,那么就不能在linux的系统中使用,反之亦然。也许这个是最受关注的一个点,也就是操作系统

1.1 Linux:WSL

wsl实现了在Windows上运行linux操作系统的开发需求,用过的人都说好

wsl分为1和2,2更好,可以在Windows终端下使用命令安装,常见的终端就是cmd和powershell,win11自带了终端管理工具,win10也可以自己在商店安装,https://learn.microsoft.com/zh-cn/windows/terminal/,工具会将此时电脑上所有的终端程序,包括以前安装VS studio或者其他软件时自带的终端都整合在一起,清晰明了

  • 区分概念:shell和终端
    • shell是软件语言,命令行解释器(例如bash、sh等)
    • 终端是应用程序

官网教程:https://learn.microsoft.com/zh-cn/windows/wsl/install,如果不想登录微软账号在商店下载,也可以直接在教程下面的链接下载,手动安装

有了wsl,就不需要在像10年前使用虚拟机或者双系统了

1.2 Android:WSA

已经不维护了,预计25年3月彻底不支持

虽然提到安卓开发需求时,大多数人第一反应是java,但是c++在开发中充当了更底层的库,所以java只是作为安卓应用开发的语言,安卓底层也都是用c++写的

我们编译可执行文件与库的时候,要想在安卓平台运行,那么就需要一个真实的arm cpu作为后端,个人建议使用一个手机,最好是root的

软件的话,建议安装:

  • adb:用来连接手机
  • Android studio:不写java的话,也就是用来拖拽文件方便(SDK包含了NDK)
  • NDK:编译Android平台需要使用对应的工具链
  • Anlink:可视化界面
  • scrcpy:非常推荐,GitHub 99k star,我爱开源

2. vscode

虽然IDE强大,但是不利于学习整个软件构建的一些过程,比如VS studio里面创建一个c++项目,点击一个按钮,直接就可以输出运行结果,自己什么都不做,完全看不到里面的过程,个人不太喜欢

2.1 设置终端

这里有一个据说非常强的shell,叫做zsh(github一个项目168k star),https://github.com/ohmyzsh/ohmyzsh/,有机会试一下

vscode原本打开的话,好像默认是Windows的cmd命令行,推荐修改为powershell,后面使用conda的话很方便

2.2 连接本地wsl

下载插件WSL,像连接你的服务器一样连接本地的linux机器

2.3 连接服务器

下载插件Remote - SSH,连接远程机器,这里可以配置一下ssh,就不需要每次都输入密码了,具体的步骤其实很简单:

  1. 本地安装ssh(一般都是安装了的)
  2. 执行命令:
ssh-keygen

# 建议直接cat本地的id_rsa.pub,然后复制内容,到服务器的~/.ssh/authorized_keys中新增一行

# 客户端
cat ~\.ssh\id_rsa.pub
# 服务端
vim ~/.ssh/authorized_keys

这里公钥的最后一行其实带有了一些信息,比如可以看到当前服务器允许了哪些终端进行免密链接,最后的内容一般是用户名+主机名

  • 如果远程机器上没有authorized_keys,就创建一个(vim或者touch)

2.4 好用的插件

  1. Remote Development

https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack

包含了4个其他插件的集合

  1. git相关


3. C++相关

可以直接安装C/C++ Extension Pack,包含了4个常用的c++拓展

3. Windows的软件:类Unix环境 or 包管理软件

需要先提到一个问题,就是上述那么多的shell、终端软件,但是Windows连个.sh结尾的文件都无法运行

为了在Windows下运行.sh文件,需要安装一个类似于linux终端的程序,最明显的就是我们下载git后,git自带的shell,git bash,就可以像在linux下一样,运行bash xx.sh这样的命令

  • git fow windows(内置简版msys2),与git官网下载的Windows版本git完全一样

参考:https://www.cnblogs.com/52fhy/p/15158765.html

3.1 C++开发:cmake等等

  1. msys2

这个我自己定义是一个Windows的包管理工具,但是一般没有在包管理工具的列表中,官网的定义是:Windows 软件分发和构建平台,个人非常推荐,拿c++来讲,Windows编译c++一般都要下载cmake、make,并且再将路径加到环境变量中;但是,使用msys2的话,只需要配置msys2本身的路径,然后在其终端中使用命令行下载gcc、g++等等工具

  1. 介绍msys2和其他概念的区别

说简单些,msys2就是用来编译win平台上的程序,而WSL只能编译出linux的程序;Cygwin是一个非常全的在Windows下使用类Unix的工具,msys和MinGW都是来自于Cygwin,但是更新太少,而msys2也是来自于Cygwin,但是更好用。

使用pacman管理包,pacman是arclinux中的软件管理工具,也是widows上msys2默认的软件管理工具。pacman可以直接从网络上的软件仓库下载安装及删除软件,自动处理依赖关系,类似ubuntu中的apt-get

  1. git

上面已经安装好msys2后,就可以通过pacman来安装git了

3.2 python:Anaconda

安装anaconda就不需要在py官网安装一个解释器了,要不然一台电脑2个解释器,新手很容易迷惑

这个就不用包管理软件安装了,一般都是在官网下载,手动安装,虽然不方便,但是好像暂时也没有其他方法,之后装包“网不好”的话,记得修改下载源

wsl的话,Windows下载sh的后缀文件拖进去,或者直接在linux下使用wget命令下载

3.2.1 Pytorch

其实就是一个大一些的python包,pip或者conda安装,需要注意的是,CUDA这种东西最好是一并下载,否则自己手动安装还要配环境,比较麻烦

3.3 Windows包管理工具

  1. winget

Windows自带的,也是微软官方推荐的

  1. scoop:https://scoop.sh/

比较流行,定位准确

  1. chocolatey:https://chocolatey.org/

比较流行,定位准确

  1. msys2(pacman)*

这个用起来还是比较方便的,个人也比较推荐,使用pacman进行安装,但是不推荐安装git(速度较慢)

  • 28
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值