MinGW+wxWidgets+Eclipse

一、wxWidgets的环境搭建
1.安装MinGW
1)到http://www.mingw.org/下载
2)下载完成后将安装到指定目录,假设目录为${MinGW_Path},并将bin目录下的mignw32-make执行文件改名为make
3)设置path环境变量,加入${MinGW_Path}/bin路径
4)打开控制台输入gcc -v查看信息,如果输出版本则安装正常

2.安装wxWidgets
1)从http://www.wxwidgets.org/下载最新稳定版的wxWidgets
2)解压文件到安装目录,这里约定为${wxWidgetsPath}
3)从控制台进入目录${wxWidgetsPath}buildmsw
4)输入如下命令开始编译wxWidgets
make -f makefile.gcc BUILD=release UNICODE=1
其中BUILD是要编译的版本,有debug和release两个版本,UNICODE是指定是否使用unicode,有1和0两个值,对于中文用户要指定为1.一般使用这个两个编译参数即可,其他的可参考wxWidgets文档。我们这里编译release和debug两个版本,即输入以上的命令两次,第2次将release改为debug
5)编译完成后,可以在${wxWidgetsPath}lib目录下看到输出目录gcc_lib,该目录下有很多.a文件和mswu和mswud两个目录。a文件命名规则是:如果是UNICODE=1编译的,则后面有u;如果是BUILD=debug编译的,则后面有d,两个可重复,即ud后缀,对应的mswu和mswud目录也是如此。
6)编译完成后,我们可以试试编译samples目录下的例子了,进入任意一个目录,然后输入如下命令进行编译:
make -f makefile.gcc BUILD=release UNICODE=1
完成后会在该目录下生成一个mswu目录,里面就有编译后的可执行文件了。如果编译出错了,则表示wxWidgets安装编译失败了,那就需要仔细核对重新编译。
3.Eclipse的安装
1)从http://www.eclipse.org/downloads/下载Eclipse IDE for C/C++
2)然后解压到指定的目录即完成了Eclipse的安装,因为Eclipse中默认使用的编译命令为make,所以我们在安装MinGW时将其bin目录下的mingw32-make改名为了make

二、Eclipse项目的设置
1.创建一个Empty C++ Project
2.打开项目的属性配置debug的设置,选择:C/C++ Build -> Settings选项页,在右边的Tool Settings中进行如下设置:
1)选择GCC C++ Complier -> Preprocessor,在右边定义如下symbols:
__WXMSW__(这个是windows平台的标示)
_UNICODE(如果wxWidgets是使用UNICODE编译的,一定要加该宏定义)
__WXDEBUG__(如果wxWidgets是使用DEBUG编译的,则需要增加该宏定义)

2)选择GCC C++ Complier -> Directories,在右边的Include paths中加入如下path:
${wxWidgetsPath}libgcc_libmswud
${wxWidgetsPath}include
${wxWidgetsPath}contribinclude

如果还有其他外部库的话也要加进来,另外,项目本身的include目录也需要这次设置。
3)选择GCC C++ Compiler -> Miscellaneous,在右边的Other flags中加入如下字符串:
-c -Wundef -Wno-ctor-dtor-privacy -fno-strict-aliasing
4)选择MinGW C++ Linker -> Libraries,在右边的Libraries中加入如下库:
wxmsw28ud_media、wxmsw28ud_richtext、wxmsw28ud_html、wxmsw28ud_core、wxbase28ud、wxtiffd、wxjpegd、wxpngd、wxzlibd、wxregexud、wxexpatd、kernel32、user32、gdi32、comdlg32、winspool、winmm、shell32、comctl32、ole32、oleaut32、uuid、rpcrt4、advapi32、wsock32、odbc32
然后在右边的Library search path中加入如下路径:
${wxWidgetsPath}libgcc_lib
${wxWidgetsPath}lib

5)选择MinGW C++ Linker -> Miscellaneous,在右边的Linker flags中加入如下字符串:
-Wl,--subsystem,windows -mwindows
6)然后保存退出即可!
3.打开项目的属性配置debug的设置,选择:C/C++ Build -> Settings选项页,在右边的Tool Settings中进行如下设置:
1)选择GCC C++ Complier -> Preprocessor,在右边定义如下symbols:
__WXMSW__(这个是windows平台的标示)
_UNICODE(如果wxWidgets是使用UNICODE编译的,一定要加该宏定义)

2)选择GCC C++ Complier -> Directories,在右边的Include paths中加入如下path:
${wxWidgetsPath}libgcc_libmswu
${wxWidgetsPath}include
${wxWidgetsPath}contribinclude

3)选择GCC C++ Compiler -> Miscellaneous,在右边的Other flags中加入如下字符串:
-c -Wundef -Wno-ctor-dtor-privacy -fno-strict-aliasing
4)选择MinGW C++ Linker -> Libraries,在右边的Libraries中加入如下库:
wxmsw28u_media、wxmsw28u_richtext、wxmsw28u_html、wxmsw28u_core、wxbase28u、wxtiff、wxjpeg、wxpng、wxzlib、wxregexu、wxexpat、kernel32、user32、gdi32、comdlg32、winspool、winmm、shell32、comctl32、ole32、oleaut32、uuid、rpcrt4、advapi32、wsock32、odbc32
然后在右边的Library search path中加入如下路径:
${wxWidgetsPath}libgcc_lib
${wxWidgetsPath}lib

5)选择MinGW C++ Linker -> Miscellaneous,在右边的Linker flags中加入如下字符串:
-Wl,--subsystem,windows -mwindows
6)然后保存退出即可!
4.保存配置即可,2和3两步都差不多,只是库的选择不同而已。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

*