sb@sp

In just two days, tomorrow will be yesterday.
  首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

WinXP下MinGW 的安装与配置

Posted on 2011-08-01 23:01  letre  阅读(2008)  评论(0)    收藏  举报

这是09年开始接触MinGW时的学习经历,当时自己为了一步步手工安装MinGW花了不少时间,对老手来说可能只是一句话功夫就完成了安装,但新手却需要一步步慢慢摸索。把这个过程简单记录了下来,希望能给需要的同学提供一点帮助。

 

MinGW在windows下安装步骤:
1. 下载需要的安装包文件,可根据自己的需要选择相应的安装包下载,也可参考www.mingw.org网站推荐的包下载,建议将自己感觉可能用到的都先下载下来,备用;
2. 下载回来的包大部分都是.tar.gz压缩包,gz和tar分别是两种压缩软件gzip和tar的压缩文件格式,从这些包的文件名可以看出它们都经过了两次压缩,故需要两次解压。在windows下解压这种文件可以使用gzip和tar这两款软件,可以到www.mingw.org下载后双击安装,安装完成后,将安装目录下的可执行文件gzip.exe和tar.exe复制到能被系统自动搜索到的目录(即加入到path路径下),比如c:\windows\system32,同时将安装tar时产生的两个dll文件一并复制到path路径下,这样就可以启动cmd了,然后按照www.mingw.org上的方法解压即可。
3. gzip和tar这两款工具的简单用法:
     gzip -df gcc-core-3.4.5-20060117-1.tar.gz     作用是将gcc-core-3.4.5-20060117-1.tar.gz解压,执行完该命令后,你将会发现原本的gcc-core-3.4.5-20060117-1.tar.gz这个文件将会消失,同时有新文件gcc-core-3.4.5-20060117-1.tar(注意,后缀.gz已经消失了!)生成。
然后再执行:
     tar -xf gcc-core-3.4.5-20060117-1.tar     执行完这条命令后,压缩包gcc-core-3.4.5-20060117-1.tar里的文件将会被解压出来,同时gcc-core-3.4.5-20060117-1.tar这个压缩包将一直保留下来。
通过以上两步,即可借助gzip和tar这两个工具将.tar.gz这种在unix和linux中极常见而在windows中却罕见的文件解压出来。在参照www.mingw.org网站的时候,可能还会发现.tar.lzma这种更怪异类型的文件,通过名字我们知道它是分别经过tar和lzma两种方式压缩,对于lzma这种类型文件解压需要用到另外一款工具7-zip,安装的方式和前面的gzip、tar一样,安装完成后需要将安装目录下的7zg.exe文件复制到path路径下(这样就可以命令行下使用了)。第一步,使用7zg e libiconv-1.13.1-1-mingw32-dll-2.tar.lzma这条命令,将会生成libiconv-1.13.1-1-mingw32-dll-2.tar文件,此时,再使用前面提到的tar即可解压出压缩包内的文件和目录(tar -xf libiconv-1.13.1-1-mingw32-dll-2.tar);
4. 按照相同的方式,将下载的安装包全部解压,MinGW的安装即完成90%,最后在命令行下添加新的环境变量即可,命令如下(引号内)"set path=c:\MinGW\bin;%path%"(注:若路径名中含有空格,则需要给整个绝对路径加上半角度双引号),其中的"c:\MinGW"应该换成你的mingw安装的绝对路径。
5. 完成上面几步后,在命令行下输入(引号内)"gcc -v"或者"g++ -v"看看,是不是出现它们的版本信息了,这时你就可以在命令行下使用gcc了。

 

说明:
1. Linux软件的安装和windows下通常的软件安装不同,它不需要写注册表一类的东西,只需解压到任一目录下即可,而且还能随时移动,只要稍稍将环境变量做相应修改即能保证它们仍正常运行。
2. 使用gcc-core-4.4.0-mingw32-bin.tar.gz和gcc-core-4.4.0-mingw32-dll.tar.gz这两个安装包时,发现在使用"gcc -v"查看版本信息的时候会出现乱码,后来改成使用gcc-core-3.4.5-20060117-1.tar.gz后就正常了。
3. gcc和g++均对文件后缀名半敏感。
4. 通过实验发现,gcc和g++均可编译C代码,而不管其文件后缀名是.c还是.cpp或.cp,对于其他后缀名,gcc和g++均会提示“不可识别的文件格式”。
5. 对于c++代码,g++可正常编译,无论其文件后缀名是.c还是.cpp;而gcc对c++代码,在后缀名不同时,给出的反馈信息不一样,带.cpp后缀名时,反馈信息包含乱码,无后缀名或为其他后缀名时,提示“不可识别的文件格式”;在为其他后缀名或无后缀名时,g++也会提示“不可识别的文件格式”。

 

Technorati 标签: MinGW