本文是关于使用MSYS2在Windows上搭建开发环境的系列教程的第一部分。在这一篇中,我们将探讨如何进行基础配置。MSYS2是一个强大的工具,它可以让Windows用户以类似Linux的方式进行开发,解决了许多常见的开发难题。为了帮助读者更好地理解和使用MSYS2,我将分享自己的配置过程,希望能帮助你们避免在配置环境时遇到的问题。
系列文章:…
安装
首先,请前往 MSYS2官网 下载最新版的MSYS2。我选择的安装目录是 D:\msys64
。
更新镜像源
为了更快速地下载软件包,建议使用清华大学开源软件镜像站提供的 MSYS2镜像。更换镜像源后,执行以下命令更新:
pacman -Sy && pacman -Su
# 或者
pacman -Syu
随后根据提示关闭窗口,重新打开一个新的bash窗口以应用更新。
安装GCC环境
为了开发需要,安装GCC环境及相关工具:
pacman -S mingw-w64-x86_64-cmake \
mingw-w64-x86_64-extra-cmake-modules \
mingw-w64-x86_64-make \
mingw-w64-x86_64-gdb \
mingw-w64-x86_64-toolchain
环境变量配置
安装完成后,设置以下环境变量:
MSYS2_HOME=D:\msys64
MSYS2_PATH_TYPE=inherit
MSYSTEM=MINGW64
MSYS2有三种启动方式,分别是:
- MSYS2 MSYS:
set MSYSTEM=MSYS
- MSYS2 MinGW 32bit:
set MSYSTEM=MINGW32
- MSYS2 MinGW 64bit:
set MSYSTEM=MINGW64
在系统PATH中添加MSYS2的路径:
%MSYS2_HOME%\bin
%MSYS2_HOME%\usr\bin
并在MSYS2的shell窗口中编辑 ~/.bashrc
文件,加入以下配置:
export PATH=$PATH:/mingw64/bin/
修改用户目录
将Windows用户目录链接到MSYS2的用户目录,以便更方便地访问文件。操作如下:
cd D:\msys64\home
mv <username> <username>-bak
mklink /J <username> C:\Users\<username>
以上命令会返回
为 <username> <<===>> C:\Users\<username> 创建的联接
上面命令中的“”请替换成实际的系统用户目录。执行完命令之后,将原来msys2的用户目录下的文件拷贝到C:盘的用户目录(C:\Users<username>)下即可。
mklink命令参数说明如下:
MKLINK [[/D] | [/H] | [/J]] Link Target
/D 创建目录符号链接。默认为文件
符号链接。
/H 创建硬链接而非符号链接。
/J 创建目录联接。
Link 指定新的符号链接名称。
Target 指定新链接引用的路径
(相对或绝对)。
安装ConEmu
ConEmu是一个适用于Windows的强大的免费开源终端仿真器,它提供了带有选项卡和状态栏的多控制台和GUI应用程序的集成。ConEmu能够大大提升开发者在Windows上的工作效率和体验。你可以在ConEmu官方网站找到更多信息及下载链接。
ConEmu的基本配置
一旦安装ConEmu,你可以按照以下步骤进行基本配置,以使其成为你的默认终端环境:
-
设置ConEmu为默认终端。
-
通过点击“集成”下的“注册”和“反注册”按钮,可以将ConEmu添加到或从Windows右键菜单中删除。
添加到右键菜单
如果你没有安装ConEmu,可以使用以下方法将MSYS2添加到Windows的右键菜单中:
- 创建一个名为
add-msys.reg
的文本文档。 - 将以下内容复制到文件中(确保根据你的安装路径调整路径):
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\msys2]
@="MSYS2"
"Icon"="D:\\msys64\\msys2.ico"
[HKEY_CLASSES_ROOT\Directory\shell\msys2\command]
@="D:\\msys64\\msys2_shell.cmd -here"
[HKEY_CLASSES_ROOT\Directory\Background\shell\msys2]
@="MSYS2"
"Icon"="D:\\msys64\\msys2.ico"
[HKEY_CLASSES_ROOT\Directory\Background\shell\msys2\command]
@="D:\\msys64\\msys2_shell.cmd -here"
[HKEY_CLASSES_ROOT\Drive\shell\msys2]
@="MSYS2"
"Icon"="D:\\msys64\\msys2.ico"
[HKEY_CLASSES_ROOT\Drive\shell\msys2\command]
@="D:\\msys64\\msys2_shell.cmd -here"
[HKEY_CLASSES_ROOT\LibraryFolder\background\shell\msys2]
@="MSYS2"
"Icon"="D:\\msys64\\msys2.ico"
[HKEY_CLASSES_ROOT\LibraryFolder\background\shell\msys2\command]
@="D:\\msys64\\msys2_shell.cmd -here"
- 双击运行此文件将MSYS2添加到右键菜单。
- 注意: 调整安装目录为实际路径。
Jetbrains IDE配置
对于使用Jetbrains系列IDE(如IDEA, PHPStorm, PyCharm, Goland)的用户,可以自定义终端配置,以便在IDE中直接使用MSYS2环境。在IDE的 Settings > Tools > Terminal
路径下,修改 “Shell path” 选项为:
"D:\msys64\usr\bin\env.exe" CHERE_INVOKING=1 /usr/bin/bash --login -i
这样设置后,你可以直接在IDE的终端中访问MSYS2环境,进一步提升你的开发效率。
Pacman的基本用法
Pacman是MSYS2和Arch Linux等系统中的包管理器,用于安装、更新和卸载软件包。以下是Pacman的一些基本命令:
安装软件
- 安装单个软件包:
pacman -S 软件名
- 同时安装多个软件包:
pacman -S 软件名1 软件名2 ...
- 安装软件,但跳过已经是最新版本的包:
pacman -S --needed 软件名1 软件名2
- 更新软件包数据库后安装软件:
pacman -Sy 软件名
- 显示操作信息后安装软件:
pacman -Sv 软件名
- 仅下载软件包,不安装:
pacman -Sw 软件名
- 安装本地软件包:
pacman -U 软件名.pkg.tar.gz
- 安装远程软件包(非官方源):
pacman -U http://www.example.com/repo/example.pkg.tar.xz
更新系统
- 更新软件包数据库:
pacman -Sy
- 升级所有已安装的软件包:
pacman -Su
- 同时更新软件包数据库和升级所有包:
pacman -Syu
卸载软件
- 仅卸载软件包,保留依赖:
pacman -R <软件名>
- 卸载软件包,并显示详细信息:
pacman -Rv <软件名>
- 卸载软件包及其不再需要的依赖:
pacman -Rs <软件名>
- 卸载软件包及其所有依赖(慎用):
pacman -Rsc <软件名>
- 卸载软件包,删除不再被任何已安装软件包所需要的依赖:
pacman -Ru <软件名>
总结
通过上述步骤,你已经完成了MSYS2的基本配置。有了MSYS2,Windows用户可以方便地使用许多Linux下的工具和功能。MSYS2不仅提供了Linux风格的工作环境,还支持直接在Windows下运行shell脚本。这样的配置不仅提高了工作效率,也使得Windows平台上的开发体验更加接近Linux环境。