wxWidget For Windows 与 CodeBlocks10.05的配合开发环境配置说明
    概述:
前段时间因为要开始开发界面程序,就考虑到产品的开发工具选型。一开始是理所当然的选择了VC作为开发工具,当然也提到了C#这样的语言。由于开发界面的团队都是C++的技能,我本人也偏爱C++作为开发工具,因此就把范围收缩到几个库了。目前市面上C++开发图形界面应用的库主要是:GTK、MFC、QT、wxWidget。经过仔细研究发现wxWidget有几个优势:免费、跨平台、体积小。但考虑到Windows平台的特别之处,就想先验证一下用CodeBlocks配合VS2008编译器开发wxWidget的界面应用,验证下来,这种开发环境是可行的,不过不是Windows平台下最优的解决方案。
既然已经完成了整个配置,就权当一种可用方案记录在案,以备后续查阅方便。
步骤如下:
1、 安装VsStudio2008
2、 安装CodeBlocks10.05
3、 下载wxWidgets-2.8.12 For Windows安装包,并解压到 C:\ wxWidgets-2.8.12
4、 到目录C:\wxWidgets-2.8.12\build\msw下,用vsStudio2008打开工程wx.dsw。
5、 此时2008会要求转换工程格式,升级到vs2008支持的版本,选择“全是”,转换后会生成一个wx.sln的文件,这个是新的项目管理文件。
6、 选择Win32 和 DEBUG模式的编译,通过项目的生成菜单完整生成整个项目的左右组件,然后退出vs2008。
7、 此时生成的静态DEBUG库会放在目录:C:\wxWidgets-2.8.12\lib\vc_lib下。DEBUG版本的静态库文件一般文件名格式为wx{module}d.lib,例如wxexpatd.lib、wxtiffd.lib,而Release版本的静态库文件为wx{module}d.lib例如:wxexpat.lib、wxtiff.lib。
8、 生成静态文件后,就可以通过CodeBlocks开发wxWidgets的界面程序了。首先启动CodeBlocks,新建一个项目,选择项目类型的时候用wxWidgetsApp这个选项。如下图
选择后点“出发”,见到下面这个界面:
下一步后就能看到选择wxWidgets的版本界面了:
这里选择wxWidgets2.8.x,理由很简单,我们下载的是这个。其实还有原因就是2.9.x的版本其实在vs2008下编译是不能完全通过的。所以我们选择了2.8.x。
接下来我们创建项目的相关属性了:
主要是项目名称,存放的路径,项目文件名是自动生成,结果文件名也是自动生成的。一般填写项目标题就能完成这个步骤。下一步:
无关紧要的信息,作者最好写一下,下一步很关键开始设置项目中与wxWidgets有关的内容了,这个很重要,有些参数只设置一次就会被保存为全局变量,当然后续还能继续修改,但最好是小心对待。
选择wxSmith作为界面资源编辑的模块。应用类型选择对话框模式。
下一步,我们来设置库:
位置就是我们的wxWidgets的安装目录。如果是第一次安装CodeBlocks一般还会看到下面这个设置界面:
这个是include头文件和库文件的设置,不觉得特别有意义。下一步:
红线圈住的地方是要手动设置的,缺省是GCC。下一步:
高级设置有兴趣的可以看看,下面有介绍。这个选项不选也没事。一般为了发布程序省事,不要用动态库方式。看看高级设置有些啥:
确定一下DEBUG模式和RELEASE模式的产品形式。上面那个如果没打算用gcc就别理他。下一步:
注意,这里选择的库名称都是Release版本的名字,如果你要用,之前在用vs2008编译wxWidgets库的时候,要选择RELEASE编译。
如果你之前是用DEBUG方式编译的wxWidgets,在你编译这个工程的时候,会出现下面这样的错误:
不大的库文件确实不存在,但我们有什么可替代的呢?答案就是那个该死的wxbase28d_net.lib因为我们只编译了DEBUG版本的库。就这么简单,那怎么让程序在链接的时候去DEBUG版本的库文件呢?菜单-》项目-》构建选项
选择连接器设置标签,为DEBUG版本的程序设置链接库:
红线圈起来的地方就是那些库了,除了第一个,其他都要换成DEBUG版本的。点击添加:
浏览目录后,在C:\wxWidgets-2.8.12\lib\vc_lib下能到这些库文件的DEBUG替代。此时可以选择多个文件加入列表中。
codeblocks带编译器版本这样设置以后就能编译了。