目的:
使用CodeBlocks进行wxWidgets C++ GUI开发。
选择wxWidgets的理由:
codeblock17.12的版本对wxWidgets支持非常直观,和VS操作非常相似。

安装wxWidgets之前的准备工作:
1.安装CodeBlock17.12和配置好编译环境,确保生成一个Console application可以编译通过,并正常运行。

Step1:下载下载最新版本的 wxWidgets,官方地址:https://www.wxwidgets.org/,目前最新版本为3.0.4,Windows版本下载地址:https://github.com/wxWidgets/wxWidgets/releases/tag/v3.0.4,如果不知道要下载哪个,请选择列表上面的Download wxMSW-3.0.4-Setup.exe (49.7 MB)。
Step2:安装wxWidgets到C:\wxWidgets-3.0.4或其它目录下.
Step3:编译wxWidgets,至于为啥要编译就不解释了(也许有编译好的版本,没试过)。
编译需要用mingw32-make命令,先将mingw所在目录加入系统环境变量Path中。 打开cmd,进入<wxWidgets安装目录>\build\msw,分别输入如下命令行:
清理:mingw32-make -f makefile.gcc clean
编译Debug版本:mingw32-make -f makefile.gcc MONOLITHIC=0 SHARED=1 UNICODE=1 BUILD=debug
编译Release版本:mingw32-make -f makefile.gcc MONOLITHIC=0 SHARED=1 UNICODE=1 BUILD=release
分别建立debug 和 release 版本的库。编译时间比较长,大概每个半小时,视电脑速度定。
详细参数说明看文件 <wxWidgets安装目录>/build/msw/config.gcc
详细安装说明看文件 <wxWidgets安装目录>/docs/msw/install.txt
编译完毕后可以看到如下:
CODEBLOCK 添加wxWidgets支持-LMLPHP
简单解释参数意义:
UNICODE控制wxWidgets以及你的程序是否使用支持Unicode的宽字符串。大多数Windows 2000或更高系统上的应用程序都应该支持Unicode。早期的Windows版本不一定有Unicode支持。你应该总是使用wxWidgets的_(“string”)和_T(“string”)宏来确保硬编码的字符串编译时是正确的类型。

  • wxWidgets的Unicode(UNICODE=1)构建将会创建带有”u”后缀的库,例如”libwxmsw28u.a”、”wxmsw28u_gcc_custom.dll”。
  • wxWidgets的ANSI(UNICODE=0)构建创建的库没有”u”后缀,例如”libwxmsw28.a”、”wxmsw28_gcc_custom.dll”。
    MONOLITHIC控制是构建一个单一的库(MONOLITHIC=1)还是多个组件库(MONOLITHIC=0)。使用单一构建,项目的设置和开发会更加简单,如果你同时使用DLL构建的话,你只需要分发一个DLL文件。如果使用非单一构建(multilib),会构建出多个不同的库同时你可以避免将整个wxWidgets的基本代码链接到主程序,就可以去掉不需要的库。同时你也必须确保你选择了正确的组件库。
    SHARED控制wxWidgets是构建DLL(SHARED=1)还是静态库(SHARED=0)。利用构建的DLL,主程序构建时间较快,可执行文件更小。但是可执行文件加上wxWidgets DLL的总大小更大,但是不同的可执行文件可以使用同一个DLL。
    BUILD控制wxWidgets构建调试版本(BUILD=debug)或者是发布版本(BUILD=release)。绝大多数情况下你只需要wxWidgets的发布版本就可以了,因为你应该不想要去调试wxWidgets自身,同时你依然可以通过链接wxWidgets的发布版本来构建你自己的程序的调试版本。

建立第一个wxWidgets工程

  1. 打开CodeBlocks,菜单 -> Settings -> Global variables…
    设置CodeBlock工作环境
    CODEBLOCK 添加wxWidgets支持-LMLPHP
    2.新建Project,选择wxWidgets project
    CODEBLOCK 添加wxWidgets支持-LMLPHP
    CODEBLOCK 添加wxWidgets支持-LMLPHP
    CODEBLOCK 添加wxWidgets支持-LMLPHP
    CODEBLOCK 添加wxWidgets支持-LMLPHP
    CODEBLOCK 添加wxWidgets支持-LMLPHP
    CODEBLOCK 添加wxWidgets支持-LMLPHP
    Build and Run,不出问题的话可出现下图结果。(如果有问题,想一想自己的人品,哈哈…)
    CODEBLOCK 添加wxWidgets支持-LMLPHP

参考链接:
wxWidgets教程00:基于CodeBlocks安装&配制;
https://blog.csdn.net/longzuyuan/article/details/22382131

10-06 18:34