原文  http://dantvt.is-programmer.com/posts/63161.html

以前用 MSYS 的多,最近重装系统顺带把环境重新配一下,发现 MSYS2 挺顺手的。

一、安装 MSYS2

先装 MSYS2 的好处是之后可以将 $HOME 设为 /home/name/,再装其他 *nix 系工具时配置文件都会放在 MSYS2 的 /home/name 下,方便管理。

1. 到 http://sourceforge.net/projects/msys2/ 下载安装。

安装位置设为 D:/develop/msys64

添加环境变量 HOME 为 D:\develop\msys64\home\name,这个变量非常有用,后面配置要多次用到。

2. 运行 msys2_shell.bat

pacman -Sy

更新本地包数据

3. 升级核心包

pacman -S --needed filesystem msys2-runtime bash libreadline libiconv libarchive libgpgme libcurl pacman ncurses libintl

之后需要关闭所有 MSYS2 shell,然后运行 autorebase.bat

4. 升级其他包

pacman -Su

运行环境说明:

可以看到 MSYS2 有三个执行脚本,分别是 msys2_shell.bat、mingw32_shell.bat 和 mingw64_shell.bat,查看内容可以看到其中只有一行区别,即是设定 MSYSTEM 变量。这个变量在 /etc/profile 中会用到:

if [ -n "$MSYSTEM" ]
thencase "$MSYSTEM" inMINGW32)PATH="/mingw32/bin:${MSYS2_PATH}:${PATH}"PKG_CONFIG_PATH="/mingw32/lib/pkgconfig"MANPATH="/mingw32/share/man:${MANPATH}"TERMINFO=/mingw32/share/terminfo:${TERMINFO};;MINGW64)PATH="/mingw64/bin:${MSYS2_PATH}:${PATH}"PKG_CONFIG_PATH="/mingw64/lib/pkgconfig"MANPATH="/mingw64/share/man:${MANPATH}"TERMINFO=/mingw64/share/terminfo:${TERMINFO};;MSYS)PATH="${MSYS2_PATH}:/opt/bin:${PATH}"PKG_CONFIG_PATH="/usr/lib/pkgconfig:/lib/pkgconfig"TERMINFO=/usr/share/terminfo;;*)PATH="${MSYS2_PATH}:${PATH}";;esac
elsePATH="${MSYS2_PATH}:${PATH}"
fi

可见,三个 .bat 的区别就是 PATH 的设置,mingw32_shell.bat 优先使用 msys64/mingw32 下的工具,mingw64_shell.bat 优先使用 msys64/mingw64 下的工具,而 msys2_shell.bat 两个都不使用,只用自身 msys 的工具。这么做的好处是当需要编译 32bit Target 的项目时使用 mingw32_shell.bat,64 bit 使用 mingw64_shell.bat,各套工具互不干扰。

二、安装 GCC

随便哪个 shell.bat 下都可以

1. 查看可用的安装包

pacman -Sl | grep gcc

可以看到以下三个

mingw32 mingw-w64-i686-gcc 4.9.1-3
mingw64 mingw-64-x86_64-gcc 4.9.1-3
msys gcc 4.8.2-2

分别对应于 msys 的三个 .bat 环境。这里先装第一个,其他类似。

2. 安装

pacman -S mingw-w64-i686-gcc

MSYS2 会自动将这个包装在 msys64/mingw32 下,从之前的分析可知只有 mingw32_shell.bat 会用到这个目录下的程序。

3. 运行

打开 mingw32_shell.bat 来试一下:

gcc --version
gcc.exe (Rev3, Built by MSYS2 project) 4.9.1
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

三、安装 Git

1. 下载 Git for Windows。安装过程选择 Git cheetah plug-in 和 Run Git from Windows Command Prompt,这样 Vim 的 Vundle 插件可以调用 git。

由于安装 MSYS2 时已设置了 HOME 环境变量,Git 会自动将配置文件放在 HOME 下,将来在 MSYS2 中使用时共用一套配置,方便。

安装 MSYS2 的 git:

pacman -S git

2. 设置 autocrlf 为 input。

git config --global core.autocrlf input

由于设置了 HOME 环境变量,可以使 gvim 和 MSYS2 的 vim 共用一套配置文件:~/.vimrc,插件也可以统一放在 ~/.vim/ 下。在使用 Vundle 时,git clone 出的代码是 unix 换行符可以避免 MSYS2 vim 读取 Vundle 插件文件时出错。

3. KDiff3 用作 diff 和 merge 工具很方便,也一并装了吧。装好后配置 Git:

git config --global merge.tool kdiff3
git config --global mergetool.kdiff3.path "C:/Program Files/KDiff3/kdiff3.exe"

中间有空格也能正确处理。可以试一下 git mergetool 和 git difftool 看看是否配置正确了。为避免每次用 git difftool 时都提示确认,下面两行也可以设一下:

git config --global mergetool.prompt false
git config --global difftool.prompt false

四、安装 gVim 并配置 Vundle 进行插件管理

1. 安装 gVim 到 D:\develop\Vim,组件选择 full

2. 由于设置了 HOME 环境变量,就可以将 gvim 的配置统一放在 HOME 目录下

将 Vim/vimfiles 下的所有文件夹删除,在 ~/.vim 下新建 bundle 文件夹

3. 参考 Vundle.vim 的教程设置好 Git 的 Curl 脚本:

https://github.com/gmarik/Vundle.vim/wiki/Vundle-for-Windows

4. 将 gmarik/Vundle.vim git clone 到 ~/.vim/bundle 下:

cd ~/.vim/bundle
git clone https://github.com/gmarik/Vundle.vim.git

5. 继续参考 Vundle.vim 的教程修改 ~/.vimrc 文件,将内容添加到开头处。虽然是在 Windows 环境下使用 gvim,但由于设置了 HOME 环境变量,以下设置按 Lunix 配置更方便:

set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()

以后插件会自动安装在 $HOME/.vim/bundle 目录下。

6. 修改 .vimrc 添加要安装的插件包,然后在 gVim 中运行

:PluginInstall

7. 现在可以使用 :h vundle 来查看 Vundle 的帮助了。

五、其他配置

1. 将 gVim 目录加入 Path 环境变量,设置 Git 使用 gvim 作为默认 editor:

git config --global core.editor gvim

2. 要将常用工作目录映射到 MSYS2 的 ~ 下,可用 mount 命令(加入 .bash_profile 中):

mount -fo binary,noacl,posix=0,user D:/docs ~/docs

这样打开 MSYS2 shell 后直接 cd docs 即可进入常用工作目录。

3. 其他工具的安装类似,查看 pacman 手册即可。常用的:

列出可用的包

pacman -Sl

安装

pacman -S package-name

删除

pacman -R package-name

4. 将配置同步到 github 上!

a. 新建 repository UserConfig,添加 .gitignore 文件,内容为 *,默认忽略所有文件。

b. git clone 到本地

git clone https://github.com/tadvent/UserConfig.git

c. 将其中的 .git 目录和 .gitignore README.md 文件移动到 ~/ 下。

d. 新建 msys2 分支并添加要同步的文件,over~

git checkout -b msys2
git add -f .bash_profile .bashrc .gitconfig .vimrc
git commit
git push origin master msys2

MSYS2 + MinGW-w64 + Git + gVim 环境配置相关推荐

  1. Git的环境配置(超详细)

    Git的环境配置 1.git安装好后,再去GitHub上注册一个账号:https://github.com/ 再点击桌面上的Git Bash快捷图标,我们要用账号进行环境配置了 2.在点击桌面上的Gi ...

  2. Ubuntu下VIM(GVIM)环境配置

    GVIM安装( Ubuntu自带VIM ): 通过应用商店安装或者通过以下安装. sudo apt-get install vim-gnome GVIM配置: 在 家目录 ( ~/ ) 下建立 .vi ...

  3. git的环境配置与从cmd下载文件

    在github上下载.zip包和通过git下载的东西是一样的,用git下载的指令为:(举例子)git clone https://github.com/dmlc/tvm.git 下面介绍git的anz ...

  4. Windows环境下MinGW/gcc安装和环境配置

    MinGW,是Minimalist GNUfor Windows的缩写.它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows ...

  5. Git 基础知识 -- 环境配置、搭建Git服务器

    简介 ​ Git 是一种分布式的项目版本控制管理工具,所采取的概念是 "去中心化" ,每个开发人员都有自己的本地代码仓库,同时为同一个远程仓库服务.有了 Git 就可以将某个文件回 ...

  6. linux vim ddyd,vim环境配置

    ctags ctags对浏览代码非常的方便,可以在函数.变量之间跳来跳去等等. 下载 我已经下载过了,路径:/home1/fujun/software/ctags-5.8.tar.gz 编译& ...

  7. mingw linux c 开发环境,MSYS2和MINGW的开发环境安装

    一.安装 MSYS2 先装 MSYS2 的好处是之后可以将 $HOME 设为 /home/name/,再装其他 *nix 系工具时配置文件都会放在 MSYS2 的 /home/name 下,方便管理. ...

  8. git bash 下 pacman 环境配置

    如果不是为了跟着经历一遍(折腾自己),直接跳到最后使用 msys2 的最优的方法. git bash 下 pacman 环境配置 安装 pacman 下载 pacman,解压到 git 的安装目录(D ...

  9. flutter git 拉不起来_「干货」Flutter开发环境配置备忘录

    为什么要用Flutter? 嗯,本篇文章不会讲,因为我认为想看这篇文章的应该已经下定决心要学习Flutter. Flutter开发环境支持安装在Windows.Mac OS和Linux下,区别在于Wi ...

最新文章

  1. 这回,不用为Linux命令发愁了吧
  2. 当机械课程设计遇上程序猿2017-12-19
  3. JavaScript数组内置排序函数
  4. A20修改串口设备文件
  5. Spring Boot集成Redis缓存之注解方式
  6. 【SAS NOTE】数组
  7. 学习Spring(一) -- 配置Spring
  8. jquery学习笔记一之window.onload与$(document).ready()区别
  9. python函数中的关键字参数
  10. Linux lvm分区扩容
  11. 电子科大考研计算机考研经验,电子科技大学
  12. shell脚本学习指南——好书推荐
  13. app小窗口悬浮工具_app小窗口悬浮工具_侧边栏 app小窗口悬浮工具
  14. k3 Bos开发百问百答
  15. install par
  16. 猪圈密码 摩斯密码 QWE加密 栅栏加密 当铺密码
  17. JAVA相关基础知识
  18. java中事件监听是什么意思_Java的事件监听器学习心得
  19. 华为g9一直显示服务器错误,华为G9青春版失败变砖开不了机了怎么办_G9青春版救砖方法...
  20. 【华为机试真题Java】从入门到入职-真题列表导读

热门文章

  1. git 每次都要输入用户名密码_Git向GitHub提供代码
  2. 【转】DICOM通信 - PDU数据包(2)
  3. 【转】2.5SharePoint服务器端对象模型 之 访问网站和列表数据(Part 5)
  4. ros amcl 参数配置
  5. 川农计算机网络题库,川农网院20秋《计算机网络》期末机考
  6. bootstraptable treeGrid 懒加载_Java类加载机制及自定义加载器
  7. 隐藏wp login.php,Wordpress 隐藏登陆链接
  8. CCIE理论-第一篇-SDN概念复习
  9. 【HDU - 1937 】Finding Seats(二维前缀和+尺取法)
  10. PointNet:3D点集分类与分割深度学习模型