[msys2+mingw64+ragel安装]

[简介]

这几天部门老大让解析几个东西,要求用ragel编写,在Windows环境下,要运用到mingw64,安装时发现mingw里没有pacman,需要现安装,然后发现Wget也没有。。。,所以改使用msys2。安装过程比较曲折,发生各种问题。也查了一堆资料文档,好在最后都解决了。特在此整理一下,以便记忆。

首先介绍一下这几个东西:msys2是msys升级版,自带pacman,方便许多,通过msys2可以安装mingw32和mingw64。mingw是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。Ragel是个有限状态机编译器,它将基于正则表达式的状态机编译成传统语言(C,C++,D,Java,Ruby等)的解析器。简单说就是Ragel有自己的语法,可以内嵌到C/C++等语言中。它可以解析正则表达式,并且不用调用正则相应的模块,因此效率大大提升,生成的文件扩展名为.rl,可以转成C语言程序。

[安装]

安装的顺序是msys2->mingw64->ragel。
先安装msys2:

[1.MSYS2主页]

http://msys2.github.io/
http://sourceforge.net/projects/msys2/

[2.MSYS2详细安装指南]

http://sourceforge.net/p/msys2/wiki/MSYS2%20installation/

[3.安装MSYS2]

首先从MSYS2主页或SourceForge下载MSYS2的安装包:32位系统下载msys2-i686-20160205.exe,64位系统下载msys2-x86_64-20160205.exe。请记住i686对应32位系统,x86_64对应64位系统,以后装软件都是这种对应关系。下面以64位的msys2-i686-20160205.exe示范安装过程:

点击“下一步”

注意上面选择安装位置,路径里不要有任何中文、特殊字符、空格等等,一般装在磁盘根的msys32或msys64目录。注意磁盘剩余空间要有10GB以上剩余空间,哪个分区剩余空间比较大就装哪。设置好安装路径,点击“下一步”

点击“下一步”

等待安装结束

取消立即运行选项的√,并点击“完成”。
添加环境变量 D:\msys64\home\%name%,这个变量非常有用,后面配置要多次用到。

[4.修改软件源]

MSYS2环境的软件和升级都是在线方式的,需要联网下载。所以需要一个可靠的软件源,软件源配置文件在msys64\etc\pacman.d\文件夹里三个:
mirrorlist.mingw32
mirrorlist.mingw64
mirrorlist.msys

用文本编辑器打开这三个文件,并添加如下软件源(我就遇到因为没有修改软件源,导致mingw下载不下来,导致安装了好半天)。默认的源在有些地方速度还可以,教育网内速度一般,可以添加其他镜像提高速度,下面列举了已知的速度还可以源,请大家自己按照现有网速排序,现在有些开源镜像添加了msys2的源,感谢各个开源镜像站点!

编辑安装目录下 \etc\pacman.d\ 文件夹下 mirrorlist.msys 等三个文件,如下所示

mirrorlist.msys

##
## MSYS2 repository mirrorlist
## Changed on 2014-11-15
##
##中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/REPOS/MSYS2/$arch
##北京理工大学镜像
Server = http://mirror.bit.edu.cn/msys2/REPOS/MSYS2/$arch
##日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MSYS2/$arch
##The UK Mirror Service Sourceforge mirror
Server = http://www.mirrorservice.org/sites/download.sourceforge.net/pub/sourceforge/m/ms/msys2/REPOS/MSYS2/$arch
## Primary
Server = ftp://148.251.42.38/MSYS2/$arch
## Sourceforge.net
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MSYS2/$arch

mirrorlist.mingw64

##
## 64-bit Mingw-w64 repository mirrorlist
## Changed on 2014-11-15
##
##中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/REPOS/MINGW/x86_64
##北京理工大学镜像
Server = http://mirror.bit.edu.cn/msys2/REPOS/MINGW/x86_64
##日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
##The UK Mirror Service Sourceforge mirror
Server = http://www.mirrorservice.org/sites/download.sourceforge.net/pub/sourceforge/m/ms/msys2/REPOS/MINGW/x86_64
## Primary
Server = ftp://148.251.42.38/MINGW/x86_64
## Sourceforge.net
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/x86_64

mirrorlist.mingw32

##
## 32-bit Mingw-w64 repository mirrorlist
## Changed on 2014-11-15
##
##中国科学技术大学开源软件镜像
Server = http://mirrors.ustc.edu.cn/msys2/REPOS/MINGW/i686
##北京理工大学镜像
Server = http://mirror.bit.edu.cn/msys2/REPOS/MINGW/i686
##日本北陆先端科学技术大学院大学 sourceforge 镜像
Server = http://jaist.dl.sourceforge.net/project/msys2/REPOS/MINGW/i686
##The UK Mirror Service Sourceforge mirror
Server = http://www.mirrorservice.org/sites/download.sourceforge.net/pub/sourceforge/m/ms/msys2/REPOS/MINGW/i686
## Primary
Server = ftp://148.251.42.38/MINGW/i686
## Sourceforge.net
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/i686

[5.msys2系统更新]

接下来打开开始菜单里的MSYS2 Shell开始进行MSYS2系统更新:

1.更新本地包数据

pacman -Sy

2.升级核心包

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

3.关闭所有 MSYS2 shell,然后运行 msys64\autorebase.bat,运行后发现msys64\msys2_shell.bat文件,msys64\mingw32_shell.bat文件和msys64\mingw64_shell.bat文件均不见了,别急,打开msys64\msys2_shell.cmd文件。

4.升级其他包,在上面的命令框里输入

pacman -Su

可能会出现如下图所示的问题,Ctrl+C,重新输入命令:pacman -Su,直到能够正常更新所有软件。

5.安装成功后,msys64目录下会出现mingw32.exe,mingw64.exe和msys2.exe,如下图:

6.(选做)设置快捷方式,这里以64位为例。打开开始菜单,找到MinGW-w64 Win64 Shell快捷方式所在目录,选择MinGW-w64 Win64 Shell,右键属性,把目标改成D:\msys64\msys2_shell.cmd -mingw64,如下图:

(这个修改是我同事告诉的,说是会解决以后可能遇到的某些问题。32位的修改同64位)

[6.MinGW64位安装+gcc安装]

1.安装gcc

pacman -S gcc

2.(选做)安装其它环境
另外可根据需要安装你想要的软件环境。

pacman -S base-devel git mercurial cvs wget p7zip perl ruby python2

说明pacman -S是安装软件包的意思,base-devel是基本开发工具和库,git mercurial cvs 三个是版本控制软件,可用于下载和发布项目源代码,wget是下载工具,p7zip是解压缩工具,perl ruby python2三个是脚本编程环境。

3.安装MinGW64位
对于32位系统,执行:

pacman -S  mingw-w64-i686-toolchain 

对于64位系统,执行:

pacman -S  mingw-w64-x86_64-toolchain

注:32位系统只能编译运行32位程序,64位系统既可以编译运行64位程序,也可以编译运行32位程序。如果希望在64位系统同时编译32位和64位系统,可以把上面两个工具链都安装。一般情况下只需要一个。如果出现下载错误,就重复执行刚才的命令,直到成功为止。

4.添加环境变量:D:\msys64\mingw64\bin;

5.安装完成后输入

gcc -v

结果如下图:

[7.Ragel安装]

输入命令查看现有Ragel版本

pacman -Ss ragel

安装64位输入命令:

pacman -S mingw64/mingw-w64-x86_64-ragel

安装32位输入命令:

pacman -S mingw32/mingw-w64-i686-ragel

[8.Ragel拓展]

Ragel官网简介
http://www.colm.net/open-source/ragel/
Ragel官方文档
http://www.colm.net/files/ragel/ragel-guide-6.9.pdf
Ragle学习笔记
http://wenku.baidu.com/link?url=nBqtGdI5OTDiwyVmAnT2VufoxYzkxiTiqp0OZzgFvgT18FiZLT3D2YcFTlw7nGuJ37nZbSgRJUkq9RXINXQRL5gAQxplTTqj81ur4k3T1fG

[9.本文参考网址链接]

http://www.tuicool.com/articles/zmeQfu
http://blog.csdn.net/liyuanbhu/article/details/39397931
http://www.cnblogs.com/shengansong/archive/2011/11/19/2255129.html
http://www.rswiki.org/%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1/msys2?rev=1416044574
http://wenku.baidu.com/link?url=nND7_rK__kXN80cGTCA8t4JYmMFytcM3lQj20nWxgV33rEfXT0r6g97vYHbzLp9VQ4M404mYaePwIXeOsD4YNLm2yOFcZJCYcBlFYnjaovG

msys2+mingw64+ragel安装相关推荐

  1. windows10下安装MSYS2+MinGW64

    1.下载msys2,官方地址:http://www.msys2.org/,这里选择64位的安装器 2.安装完成之后,先别启动msys2,在 安装根目录/etc/pacman.d/ 下找到mirrorl ...

  2. 18 安装zlib报错_scalapack win安装及mingw64环境配置

    失学在家,手里也没有服务器.看家里有台台式机,于是想给台式机配上科研环境.发现win10配置scalapack的资料基本没有,于是就想写点笔记,为人类的中文文献库增加一点资料. 1. MSYS2和MI ...

  3. Win11下Clion+MSYS2(MinGW64)配置C++编译环境

    Clion中利用MSYS2(MinGW64)配置C++编译环境(Win11/10) 一.准备工具 二.操作流程 三.结束 一.准备工具 Clion 2022 msys2-64 二.操作流程 下载并安装 ...

  4. MSYS2使用教程——win10系统64位安装msys2最新版(msys2-x86_xxxx.exe)

    一.安装 测试系统: windows 10 首先需要msys2的安装包,可以去官网下载安装包 官网地址: http://www.msys2.org/ 本次下载的是 msys2-x86_64-lates ...

  5. msys2在windows10系统的安装

    测试系统: windows 10 首先需要msys2的安装包,可以去官网下载安装包 官网地址: http://www.msys2.org/ 本次下载的是 msys2-x86_64-20180531.e ...

  6. 用MSYS2安装mingw

    文章目录 前言 卸载mingw 安装MSYS2 前言 安装MSYS2的原因是,在windows安装protobuf时,想用mingw编译protobuf的库,而protobuf的官方手册只给出一句: ...

  7. msys2安装mingw开发环境

    打开"MSYS2 MSYS"进行通用配置 1.设置镜像(msys2 | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror) s ...

  8. 在windows上安装配置msys2

    在windows上安装配置msys2 msys2安装 启动msys2 msys2中文乱码问题 MSYS2 目录映射问题 MSYS2 ln -s软连接会复制目录的问题 fastab配置文件目录的方法 m ...

  9. msys2 安装注意事项

    它一直在使用 msys.有一个最近发现 msys2.而且msys2 配套的编译器是MinGW-w64. 就试着用了用,感觉还不错,这里把安装过程记录一下. 简单的说,MSYS2 是MSYS的一个升级版 ...

  10. msys2 安装笔记

    以前一直在用  msys ,最近发现还有个  msys2 ,并且 msys2  配套的编译器是 MinGW-w64 . 就试着用了用,感觉还不错,这里把安装过程记录一下. 简单的说,MSYS2 是MS ...

最新文章

  1. Volley框架学习
  2. 如何从Silverlight 代码调用Javascript 函数
  3. android关于控件中setTag(key,Object)的设置的相关问题
  4. Mac下搭建jekyll环境
  5. 验证Ross《随机过程》(第二版)1.9C
  6. php提交表单处理,PHP表单处理
  7. 解决App启动时白屏的问题
  8. ipa在线安装搭建_三种越狱工具安装方法
  9. 设置ntpdate服务开机启动校验时间
  10. 设计企业网站大纲_企业网站设计布局
  11. winform中的小技巧【自用】
  12. 用电采集系统费控效率研究与优化
  13. mysql数据库证件脱敏_mysql对身份证号码进行脱敏处理
  14. 基于FPGA的SDRAM控制器设计(4)
  15. PDMan-2.1.0 正式发布:用心开源,免费的国产数据库建模工具
  16. UIUC计算机科学系博士,伊利诺伊大学香槟分校之计算机科学系
  17. Photoshop - 高反差保留
  18. MySQL复合索引(联合索引)原理分析及使用
  19. html5怎么引入苹方简,Kindle 推荐使用“苹方-简”自定义字体,阅读体验最舒服...
  20. 打造高效能团队之测试能力提升

热门文章

  1. mysql语句监控工具
  2. html利用浏览器打印jquery.jqprint-0.3.js,制作票据通用模板js
  3. Linux 日志查看命令journalctl
  4. Netperf 网络性能测试
  5. 计算机机房配电计算,银行计算机房动力配电系统浅析
  6. python http请求时gzip解压
  7. iwconfig工具源码
  8. npx create-react-app 动不了???(解决方法)
  9. Movist Pro for mac(mac高清视频播放器)
  10. Charles4.62破解版本下载