文档章节

MSYS2开发环境搭建

solar.xie
 solar.xie
发布于 2015/12/26 21:00
字数 973
阅读 735
收藏 4

软件安装

下载msys2-x86_64软件包,双击安装到某根目录下,比如D:\msys64。

pacman是MSYS2自带的软件管理工具:

  1. 可通过修改msys64\etc\pacman.d下的三个文件修改软件源,可供选择的有:中国科学技术开源软件镜像北京理工大学镜像日本北陆先端科学技术大学院大学SourceForge镜像The UK Mirror Service Sorceforge mirror等。
  2. 下载后的软件包默认存放目录msys64\var\cache\pacman\pkg;若命令行下载速度较慢,可以到到软件源网站使用下载工具下载相应的软件包,然后拷贝到此目录,接着使用命令行进行安装。
  3. 运行msys2_shell.bat: pacman -Sy 更新本地包数据
  4. 升级核心包: pacman -S --needed filesystem msys2-runtime bash libreadline libiconv libarchive libgpgme libcurl pacman ncurses libintl, 之后需要关闭所有 MSYS2 shell,然后运行 autorebase.bat
  5. 升级其他包:pacman -Su
  6. 常用命令: 
    • pacman -Q查看已安装的软件包
    • pacman -S -g查看软件组
    • pacman -Q -g base-devel查看软件组包含的软件
    • pacman -Q -l vim查询软件包的内容
    • pacman -Q -s nettle查询软件所在的包
  7. 查看工具帮助:pacman -h ;pacman -S -h
  8. 建议通过安装软件组来安装工具链

    pacman -S mingw-w64-x86_64-toolchain pacman -S mingw-w64-i686-toolchain pacman -S base-devel pacman -S vim
    
    
       
    
       
    
        
        
    • 1
    • 2
    • 3
    • 4

MSYS2应用说明

运行环境说明

  1. msys64\etc\fstab中可以配置文件目录映射:比如配置C:\Users\lenovo\Desktop /desktop后,可以在终端直接cd /desktop后可以直接切换到C:\Users\lenovo\Desktop目录下。

  2. 任务栏快捷键:msys64\usr\bin\mintty.exe拖拽到任务栏上,右击选择属性,将目标改成三种BAT脚本中的一个。

  3. vim高亮配置:将msys64\etc\skel.vimrc拷贝到用户目录下。

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

    MSYS2_PATH="/usr/local/bin:/usr/bin:/bin" MANPATH="/usr/local/man:/usr/share/man:/usr/man:/share/man:${MANPATH}" INFOPATH="/usr/local/info:/usr/share/info:/usr/info:/share/info:${INFOPATH}" MINGW_MOUNT_POINT= if [ -n "$MSYSTEM" ] then case "$MSYSTEM" in MINGW32)
      MINGW_MOUNT_POINT=/mingw32
      PATH="${MINGW_MOUNT_POINT}/bin:${MSYS2_PATH}:${PATH}" PKG_CONFIG_PATH="${MINGW_MOUNT_POINT}/lib/pkgconfig:${MINGW_MOUNT_POINT}/share/pkgconfig" ACLOCAL_PATH="${MINGW_MOUNT_POINT}/share/aclocal:/usr/share/aclocal" MANPATH="${MINGW_MOUNT_POINT}/share/man:${MANPATH}" ;;
    MINGW64)
      MINGW_MOUNT_POINT=/mingw64
      PATH="${MINGW_MOUNT_POINT}/bin:${MSYS2_PATH}:${PATH}" PKG_CONFIG_PATH="${MINGW_MOUNT_POINT}/lib/pkgconfig:${MINGW_MOUNT_POINT}/share/pkgconfig" ACLOCAL_PATH="${MINGW_MOUNT_POINT}/share/aclocal:/usr/share/aclocal" MANPATH="${MINGW_MOUNT_POINT}/share/man:${MANPATH}" ;;
    MSYS)
      PATH="${MSYS2_PATH}:/opt/bin:${PATH}" PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/share/pkgconfig:/lib/pkgconfig" ;;
    *)
      PATH="${MSYS2_PATH}:${PATH}" ;; esac else PATH="${MSYS2_PATH}:${PATH}" Fi
    
    
       
    
       
    
        
        
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32

    可见,三个 .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,各套工具互不干扰。

制作软件包makepkg

MSYS2官网的软件包是通过makepkg或makepkg-mingw制作的。 
可参

常用软件包编译

常用软件包我们可以简单的使用命令直接从官网安装即可,比如安装openssl:

  • 32bit:pacman -S mingw-w64-i686-openssl
  • 64bit: pacman -S mingw-w64-x86_64-openssl

有时候根据项目需要我们不得不自己动手编译依赖的软件包,以下是我在工作用到的库编译过程记录。

openssl

  • 64bit

    mkdir openssl64 cd openssl64
    tar zxvf openssl-1.0.2c.tar.gz cd openssl-1.0.2c
    ./configure mingw64 shared
    make
    make INSTALL_PREFIX=../ install
    
    
       
    
       
    
        
        
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
  • 32bit

    mkdir openssl32 cd openssl32
    tar zxvf openssl-1.0.2c.tar.gz cd openssl-1.0.2c
    ./configure mingw shared
    make
    make INSTALL_PREFIX=../ install
    
    
       
    
       
    
        
        
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

zlib

  • 32bit 

    mkdir zlib32 
    cd zlib32 
    tar zxvf zlib-1.2.8.tar.gz 
    cd zlib-1.2.8/ 
    make -f ./win32/Makefile.gcc 
    make 
    make install -f win32/Makefile.gcc DESTDIR=../

本文转载自:http://blog.csdn.net/callinglove/article/details/48601775

共有 人打赏支持
solar.xie
粉丝 22
博文 110
码字总数 25844
作品 0
珠海
高级程序员
私信 提问
Windows快速搭建QT静态开发环境

最近尝试在Windows平台搭建QT的静态开发环境, 发现一个不错的方法, 发出来与大家分享。 中国科技大学有一个源, 在msys目录下面有一个现成的静态编译的QT库, 下面是链接: http://mirrors.ustc...

雁儿在林梢
2015/12/30
149
0
win上傻瓜化安装Qt开发环境

win上傻瓜化安装Qt开发环境 古老的MSYS搭建的开发环境不仅存在一些兼容性问题,而且还很繁琐,幸好mingw-build项目的开发者又做了更进一步的改进,他们开发了MSYS2项目。这个项目不仅兼容性更...

panda1986_meng
2014/02/27
0
0
编译testdisk,使用LibNTFS3G模块

在Windows平台下,使用msys2编译testdisk,使用LIBNTFS3G模块 - 其中我方已经成功使用NTFSPROGS在msys2下编译testdisk,目前需要替换NTFSPROGS为LIBNTFS3G; - 目前需要将NTFSPROGS替换为最新...

李龙飞要
2017/01/11
1
0
Windows环境下的C/C++编译器

编译器介绍 在Windows下的开发实际上是VS(Visual Studio)一家独大,而在Linux上则是GCC占据主导地位,这两种编译器是和其对应的操作系统紧密联系在一起的。伴随着计算机技术的发展,GCC也有了...

wqli
2015/12/14
412
0
Windows平台使用eclipse集成msys2控制台

1、安装JDK,eclipse(百度搜索,教程特别多); 2、打开eclipse设置Terminal: windows => Preferences => Terminal, 添加Local Terminal如下图 注意: Path设置为msys2_shell文件的路径 Ar...

飞鸿眉敛
2018/01/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周日乱弹 —— 没时间 没头发 但有钱

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @开源中国总经办主任 :分享齐一的单曲《这个年纪》 《这个年纪》- 齐一 手机党少年们想听歌,请使劲儿戳(这里) @肿肿卷 :我真的可以睡一天...

小小编辑
47分钟前
11
4
Django进阶 1.1 ORM基础—ORM 1.2.1 增删改查之查询 1.2.2 删改增 (1) 1.2.3 删改增 (2)

ORM基础 ORM是Django操作数据库的API,Django的作者将sql语句封装在里面供我们使用。 我们前面还提到过Django提供一个模拟数据库的工具,sqlite,供我们学习测试使用。 如果我们想使用mysql...

隐匿的蚂蚁
今天
3
0
Windows 上安装 Scala

在安装 Scala 之前需要先安装 Java 环境,具体安装的详细方法就不在这里描述了。 您可以自行搜索我们网站中的内容获得其他网站的帮助来获得如何安装 Java 环境的方法。 接下来,我们可以从 ...

honeymose
今天
3
0
数据库篇多表操作

第1章 多表操作 实际开发中,一个项目通常需要很多张表才能完成。例如:一个商城项目就需要分类表(category)、商品表(products)、订单表(orders)等多张表。且这些表的数据之间存在一定的关系...

stars永恒
今天
3
0
nginx日志自动切割

1.日志配置(Nginx 日志) access.log----记录哪些用户,哪些页面以及用户浏览器,IP等访问信息;error.log------记录服务器错误的日志 #配置日志存储路径:location / {      a...

em_aaron
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部