Windows 10下通过安装包安装wxWidgets并在Code::Blocks与Visual Studio 2019 Community中使用的技术咨询
Windows 10下通过安装包安装wxWidgets并在Code::Blocks与Visual Studio 2019 Community中使用的技术咨询
嗨,我来帮你一步步搞定这个问题!你选官方安装包来装wxWidgets真的很明智——既不用担心里手动编译搞乱系统,又能省不少时间,体验和你用Qt Creator的便捷度差不了多少,只是需要在常用IDE里做一点点简单配置,我给你捋清楚:
一、用wxMSW-3.2.2.1-Setup.exe安装wxWidgets
这个安装包已经帮你做了90%的工作,几乎不需要手动配置:
- 双击运行安装包,跟着向导走就好,默认选项基本都没问题,但一定要记好你选的安装路径(比如默认是
C:\wxWidgets-3.2.2.1),后面配置IDE全靠它。 - 安装过程中,安装器会自动解压头文件、库文件,还会预编译好常用的Debug/Release、32位/64位版本的库,完全不用你手动编译核心组件。
- 安装完成后不需要额外配置系统环境变量(当然你想加也可以,但不是必需的,后面在IDE里指定路径就行)。
二、在Code::Blocks中配置wxWidgets
Code::Blocks的配置很直观,跟着这几步来:
- 打开Code::Blocks,点击顶部菜单栏的
Settings->Compiler... - 在弹出的窗口切换到
Search directories标签页:- 选择
Compiler,点击Add,选你wxWidgets安装路径下的include文件夹(比如C:\wxWidgets-3.2.2.1\include) - 选择
Linker,点击Add,选安装路径下的lib\gcc_dll(如果你用Code::Blocks自带的MinGW编译器,这是预编译的动态链接库路径;要是想用静态库就选lib\gcc_lib)
- 选择
- 切换到
Linker settings标签页,在Other linker options里添加:
(这里的-lwxmsw32u_core -lwxbase32u -lwxtiff -lwxjpeg -lwxpng -lwxzlib -lwxregexu -lwxexpatu代表Unicode版本,是安装包默认编译的版本,要是你装的是ANSI版本就去掉u) - 最后创建项目:点击
File->New->Project...,找到wxWidgets project跟着向导走,向导会让你选wxWidgets安装路径,直接填你之前记的路径,剩下默认配置就能生成一个可运行的示例项目了。
三、在Visual Studio 2019 Community中配置wxWidgets
这里给你两种方式,选你顺手的来:
方式一:直接用现成的示例项目(最快测试)
wxWidgets安装包里自带了VS兼容的示例项目,直接打开就能用:
- 找到安装路径下的
samples\minimal文件夹(比如C:\wxWidgets-3.2.2.1\samples\minimal),打开里面的minimal.vcxproj,VS会自动识别库路径,直接编译运行就能看到基础窗口。
方式二:手动配置自己的新项目
如果要从零创建项目,按下面步骤来:
- 创建空C++项目,右键项目名称 ->
Properties - 在
Configuration Properties->VC++ Directories里:Include Directories:添加C:\wxWidgets-3.2.2.1\include和C:\wxWidgets-3.2.2.1\include\msvcLibrary Directories:64位VS选C:\wxWidgets-3.2.2.1\lib\vc_x64_lib,32位选C:\wxWidgets-3.2.2.1\lib\vc_lib
- 切换到
Linker->Input,在Additional Dependencies里加对应版本的库:- Debug版本:
wxmsw32ud_core.lib wxbase32ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib - Release版本:把上面每个库名末尾的
d去掉就行
- Debug版本:
- 最后在
C/C++->Preprocessor里添加预定义宏:WIN32;_WINDOWS;wxUSE_UNICODE,确保项目用Unicode版本的wxWidgets。
整体来说,和你用Qt Creator的体验接近,只是wxWidgets没有绑定专属IDE,需要在你常用的工具里做一点路径配置,但都很简单,跟着步骤来不会出错的。
备注:内容来源于stack exchange,提问作者JMBCODE




