mingw(GNU工具集导入库集合) 5.1.6 官方版

MinGW是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,它是Minimalist GNU on Windows的略称,实际上 MinGW 并不是一个 C/C++ 编译器,而是一套 GNU 工具集合。除开 GCC (GNU 编译器集合) 以外,MinGW 还包含有一些其他的 GNU 程序开发工具 (比如 gawk bison 等等)。
开发 MinGW 是为了那些不喜欢工作在 Linux(FreeBSD) 操作系统而留在 Windows 的人分享一套符合 GNU 的 GNU 工作环境。

MinGW:一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你生成本地的Windows程序而不需要第三方C运行时库。实际上MinGW 并不是一个 C/C++ 编译器,而是一套 GNU 工具集合。除开 GCC (GNU 编译器集合) 以外,MinGW 还包含有一些其他的 GNU 程序开发工具 (比如 gawk bison 等等)。
开发 MinGW 是为了那些不喜欢工作在 Linux(FreeBSD) 操作系统而留在 Windows 的人分享一套符合 GNU 的 GNU 工作环境。体说来,知识兔使用 MinGW 就是 GNU。
这是mingw的最新版。

mingw的安装和使用:

1)下载MinGW 

2) 以版本5.1.6为例,下载后为MinGW-5.1.6.exe,默认地被安装到C:\MinGW,安装是选择如下:

mingw(GNU工具集导入库集合) 5.1.6 官方版

3)创建bat方便使用MinGW

在安装的跟目录下创建bat,来方便知识兔使用MinGW,bat如下:

set path=c:\mingw\bin;%path%

start cmd

4)使用MinGW的gcc

在C:\MinGW\example下创建helloworld.c,然后知识兔使用MinGW的gcc来编译,然后知识兔运行,如下:

mingw(GNU工具集导入库集合) 5.1.6 官方版

MinGW开发wxWidgets实例:

安装完MinGW,知识兔需要在环境变量里添加一个wxWidgets根目录环境变量,这里我命名为:wxwin,值为D:\wxWidgets-2.9.4。接下来知识兔打开CodeBlocks,首先打开“Settings”->“Compiler…”菜单,知识兔选择MinGW作为其默认编译器。
选择MinGW作为默认编译器图示(等待截图)然后知识兔再打开“Settings”->“Global Variables…”,在设置“default”下新建立一个“wx”变量,在“Build-in fields:”下,base中填入“${wxwin}”,include中填入“${wxwin}\include”,lib中填入“${wxwin}\lib”,这些都是后面建立wxWidgets工程的向导里需要用到的。

mingw(GNU工具集导入库集合) 5.1.6 官方版

“Settings”->“Global Variables…”设置图设置完成后,知识兔就可以建立wxWidgets工程了,下面知识兔来一步步建立一个完整的wxWidgets示例工程。通过菜单“File”->“New”->“Project…”,知识兔选择最后面的wxWidgets project。

mingw(GNU工具集导入库集合) 5.1.6 官方版

知识兔点击“Go”进入工程配置向导,首先会出来一个欢迎窗口,在这里知识兔直接下一步,

mingw(GNU工具集导入库集合) 5.1.6 官方版

然后知识兔选择机子里安装的wxWidgets版本,我这里装的是2.9版本,所以选择最后一个。

mingw(GNU工具集导入库集合) 5.1.6 官方版

按“Next”,然后知识兔输入工程名“wxtest”。

mingw(GNU工具集导入库集合) 5.1.6 官方版

继续“Next”,输入作者和及一些版权说明信息。

mingw(GNU工具集导入库集合) 5.1.6 官方版

继续“Next”,选择GUI设计工具和程序类型,这里我就用wxSmith和Dialog based。

mingw(GNU工具集导入库集合) 5.1.6 官方版

按“Next”,接下来的就是wxWidgets环境的一些设置了,这里知识兔输入刚才设置的wxWidgets根目录,直接填入“$(#wx)”就可以了。

mingw(GNU工具集导入库集合) 5.1.6 官方版

按“Next”,这里知识兔看到默认就是选择了MinGW编译器了,下面的知识兔只做Debug版本,所以只选上“Create “Debug” configuration”。

mingw(GNU工具集导入库集合) 5.1.6 官方版

 
继续“Next”,接下来要选择怎么使用wxWidgets库,这里根据你编译的wxWidgets库是什么样的来。

mingw(GNU工具集导入库集合) 5.1.6 官方版

按“Next”,因为选择了“Configure Advanced Options”,所以要对使用wxWidgets库做更多的设置,这里知识兔选上知识兔使用lib方式调用。

mingw(GNU工具集导入库集合) 5.1.6 官方版

按“Next”进到最后一步,知识兔选择需要用到的库,不知道的话全部选上。

mingw(GNU工具集导入库集合) 5.1.6 官方版

知识兔点击“Finish”,工程随即建立成功。
知识兔按F8进行编译调试,知识兔可能看到如下错误:

mingw(GNU工具集导入库集合) 5.1.6 官方版

这是因为默认的库里没有这些库的原因,知识兔通过菜单“Project”->“Build options”,修改“Linker settings”下的“Link libraries”,知识兔选择刚才那几个缺失的库,知识兔点击“delete”去掉。

mingw(GNU工具集导入库集合) 5.1.6 官方版

再按F8编译调试,知识兔就可以发现工程可以运行成功了。

mingw(GNU工具集导入库集合) 5.1.6 官方版

MinGW的工具列表:

    addr2line.exe
    ar.exe
    as.exe
    c++.exe
    c++filt.exe
    cpp.exe
    dlltool.exe
    dllwrap.exe
    g++.exe
    gcc.exe
    gccbug
    gcov.exe
    gprof.exe
    ld.exe
    mingw32-c++.exe
    mingw32-g++.exe
    mingw32-gcc-3.4.5
    mingw32-gcc.exe
    mingw32-make.exe
    mingwm10.dll
    nm.exe
    objcopy.exe
    objdump.exe
    ranlib.exe
    readelf.exe
    size.exe
    strings.exe
    strip.exe
    t.txt
    windmc.exe
    windres.exe

当然知识兔可以在Codeblocks或Eclipse中吃用MinGW的gcc和g++编译器。

如果知识兔想使用更多的linux的工具或想在模拟的linux环境是使用MinGW的gcc的话,需要安装MSYS和相应的tools。如下:

    MSYS Supplementary Tools\msysDTK-1.0.1.exe

    MSYS Base System 
    MSYS binutils

    MSYS bash,perl,vim,tar,zip,grep,awk,sed,libtool,autoconf,automake。。。。

    或者也可以使用MinGW的libtool,autoconf,automake代替MSYS的。

下载仅供下载体验和测试学习,不得商用和正当使用。

下载体验

请输入密码查看下载!

如何免费获取密码?

点击下载

评论