1.下载安装带mingw的Code::Blocks(这个就不详细说了,直接下载exe版的很容易搞定),使用标准安装(默认安装wxSmith插件),假设Code::Blocks装在D:/ProgramFiles/CodeBlocks中。
2.安装好之后启动Code::Blocks,会出现一个编译器选项对话框,选择第一个GUNGCCCompiler(后面有detected标志)就能编译C/C++项目了
3.在系统->高级->环境变量->Path中添加:
a)D:/ProgramFiles/CodeBlocks/MinGW/libexec/gcc/mingw32/3.4.5;
b)和D:/ProgramFiles/CodeBlocks/MinGW/bin;
4.这里开始安装wxwidgets,先到网站下载完全版(或windows相应版本,叫做MSW,即Microsoftwindows)
5.解压软件到目标目录(这里假设为D:/wxWidgets-2.8.10)
6.开始菜单->运行->cmd->回车进入命令行
7.切换到目录D:/wxWidgets-2.8.10/build/msw
8.执行命令mingw32-make-fmakefile.gccBUILD=debugUNICODE=1(详细的参数见D:/wxWidgets-2.8.10/INSTALL-MSW.txt),这里参数很关键,BUILD选项共两个参数debug和release。因为选项用Code::Blocks编译wxWidgets项目时必须编译成相应的目标(buildtarget中的debug对debug),否则会提示找不到libwxmsw28ud_core/libwxmsw28u_core等。Unicode道理也一样,这里1表示使用Unicode,0表示不使用Unicode。
9.切换到目录D:/wxWidgets-2.8.10/samples/minimal
10.执行命令mingw32-make-fmakefile.gccBUILD=debugUNICODE=1
11.打开Code::Blocks中compileranddebuggersettings,在Linkersettings->linklibraries中添加D:/wxWidgets-2.8.10/lib/gcc_dll/目录下所有*.a文件。
12.在Searchdirectories里的Compiler里面添加上D:/wxWidgets-2.8.10/lib/gcc_dll/mswu/wx。
13.新建一个wxWidgetsproject,按提示填写相应的保存目录和版权信息,其中
a)preferredGUIbuilder中可以选择wxSmith;
b)wxWidgetslocation,在base里面选择D:/wxWidgets-2.8.10就可以了;
c)wxWidgetsLibrarySetting里面的设置必须和wxWidgets编译选项相一致(本例中采用的是enableUnicode,另外两项不选)。
常见问题解决:
1.找不到wx/setup.h,libwxmsw*,*.h等文件
a)查看buildtarget是否与wxWidgets编译选项相一致,debug对debug,release对release。
b)在Linkersettings->linklibraries中添加D:/wxWidgets-2.8.10/lib/gcc_dll/目录下所有*.a文件。
c)在Searchdirectories->compiler里添加D:/wxWidgets-2.8.10/lib/gcc_dll/mswu/wx。
d)wxWidgets编译有问题或路径设置有问题(路径中最好不要包含汉字)。
2.脚本异常,/CodeBlocks/share/CodeBlocks/templates/wizard/wxwidgets/wizard.script中的XX行执行错误
a)肯定是设置地有问题,首先检查有没有使用汉语路径,如果使用了,改一下,然后进行b;
b)将Code::Blocks的设置信息删除(位置在系统盘中的/DocumentsandSettings/你的用户名/ApplicationData,删除其中的codeblocks文件夹,然后进行c;
c)重新进行正文中11-13步的设置;
d)如果问题没有解决,删除wxWidgets所在目录的所有东西(可能需要重新启动explorer.exe),取消使用汉字目录,删除Code::blocks的设置信息,从编译wxWidgets(正文第5步)重新编译wxWidgets和设置环境。