wxWidgets 2.8.9出来了
以前用makefile编过wx,这次用IDE编译。
1)下载后安装到默认目录
C:/wxWidgets-2.8.9/
2)使用VC++2005,打开build/msw目录中的wx.dsw,提示转换工程文件格式,选yes to all
3)可以选择Build/batch build...或逐个选择项目编译,由于batch build项目太多了,选择很费功夫,我选择逐个编译,wx2.8.9中一共包含20个lib,按如下顺序逐个编译,我选择编译Unicode Debug和Unicode Release的版本(unicode,debug and release静态库)
wxjpeg
wxpng
wxtiff
wxzlib
wxregex
wxexpat
base
net
odbc
xml
core
gl
html
media
qa
adv
dbgrid
xrc
aui
richtext
(参考资料:http://wiki.wxwidgets.org/MSVC#Building_Single_Configurations)
在编译到wxtiff时,出现错误:syntax error : identifier 'PVOID64'
网上查了下,这是由于头文件搜索顺序引起的。由于我安装了dx8sdk和dx9sdk,dxsdk的头文件搜索顺序在Platformsdk之前。而dxsdk中也有basetsd.h头文件,而该文件无POINTER_64的定义,因此编译通不过。把include目录表中$(VCInstallDir)PlatformSDK/include调到最上面就可以了。
其实不按照这个顺序也能编译出来,只是如果出现问题可以参考一下这个顺序。另外比较玄乎的说法是,即使编译过了,使用时有些莫名其妙的错误和编译顺序相关。为了避免以后出现问题,我按顺序编译了一遍。
4)编好的lib文件在/lib/vc_lib中,一共20X2个lib:
C:/wxWidgets-2.8.9/lib/vc_lib 的目录
2008-10-25 15:58 593,260 wxjpegd.lib
2008-10-25 16:00 249,650 wxjpeg.lib
2008-10-25 16:01 325,074 wxpng.lib
2008-10-25 16:01 518,522 wxpngd.lib
2008-10-25 16:18 565,814 wxtiff.lib
2008-10-25 16:19 1,202,186 wxtiffd.lib
2008-10-25 16:32 195,026 wxzlibd.lib
2008-10-25 16:32 102,740 wxzlib.lib
2008-10-25 16:35 284,204 wxregexud.lib
2008-10-25 16:35 276,884 wxregexu.lib
2008-10-25 16:35 223,390 wxexpat.lib
2008-10-25 16:35 464,492 wxexpatd.lib
2008-10-25 16:36 8,612,502 wxbase28ud.lib
2008-10-25 16:36 5,052,358 wxbase28u.lib
2008-10-25 16:36 642,144 wxbase28u_net.lib
2008-10-25 16:36 1,308,364 wxbase28ud_net.lib
2008-10-25 16:37 306,176 wxbase28ud_odbc.lib
2008-10-25 16:37 15,518 wxbase28u_odbc.lib
2008-10-25 16:37 101,804 wxbase28u_xml.lib
2008-10-25 16:37 442,078 wxbase28ud_xml.lib
2008-10-25 16:37 30,883,342 wxmsw28ud_core.lib
2008-10-25 16:38 19,642,438 wxmsw28u_core.lib
2008-10-25 16:39 14,418 wxmsw28u_gl.lib
2008-10-25 16:40 334,264 wxmsw28ud_gl.lib
2008-10-25 16:40 5,296,418 wxmsw28ud_html.lib
2008-10-25 16:40 3,256,338 wxmsw28u_html.lib
2008-10-25 16:40 525,204 wxmsw28u_media.lib
2008-10-25 16:41 1,201,202 wxmsw28ud_media.lib
2008-10-25 16:42 445,174 wxmsw28u_qa.lib
2008-10-25 16:42 923,282 wxmsw28ud_qa.lib
2008-10-25 16:42 6,775,606 wxmsw28ud_adv.lib
2008-10-25 16:42 4,245,372 wxmsw28u_adv.lib
2008-10-25 16:43 14,430 wxmsw28u_dbgrid.lib
2008-10-25 16:43 334,322 wxmsw28ud_dbgrid.lib
2008-10-25 16:43 7,603,946 wxmsw28ud_xrc.lib
2008-10-25 16:44 4,974,382 wxmsw28u_xrc.lib
2008-10-25 16:44 1,510,758 wxmsw28u_aui.lib
2008-10-25 16:44 2,720,422 wxmsw28ud_aui.lib
2008-10-25 16:44 6,019,480 wxmsw28ud_richtext.lib
2008-10-25 16:45 3,781,466 wxmsw28u_richtext.lib
40 个文件 121,984,450 字节
虽然是unicode,但有些库的名字里并没有u,因为它们没涉及到unicode相关的代码。
5)测试:打开C:/wxWidgets-2.8.9/samples中的samples.dsw,提示convert时选yes to all,将编译配置选成unicode release或unicode debug,选中某个工程build。
我编了一个aui的例子,release版本是1.63M。
不过将浮动工具条拖出来时程序竟然崩溃了,正好用VC debug一下看看。
执行wxAuiManager::OnFloatingPaneMoving()时,得到的pane的frame指针为空,导致执行pane.frame->GetPosition()时程序崩溃。
恰好我以前装了wxPython2.8.8.1的demo,运行一下试试,相同操作没有问题。。
wxPython DEMO中使用的是wx.ToolBar,而这儿使用的是wxAuiToolBar,没有可比性了,是我编出来的库有问题?重新编译了一下aui库,还是如此。继续尝试,发现除了工具条其他的窗口都没问题。看了看demo和wx的代码,感觉应该是这个新加入的类wxAuiToolBar的问题,google了一下,果然有crash bug:http://trac.wxwidgets.org/ticket/10036
看来这个新类还不稳定,等等才能用啊
分享到:
相关推荐
这是完整编译wxWidgets 2.8.9 的...关于Windows XP,Vista下MinGW的安装与配置,编译顺序,VC++2008中创建wxWidgets 项目时的路径配置均有说明文件。编译前请先修改env.bat文件中的变量设置,指向你的wxWidgets目录。
运用MinGW和CodeBlocks在Windows上编译wxWidgets及使用 从源码编译wxWidgets并使用codeblocks构建wxWidgets应用 MinGW:MSYS2 codeblocks:20.03
wxWidgets-2.8.9 界面开发库源代码,可在windows 和 linux下应用,跨平台的,此代码是windwos平台的库代码
VS2015下编译的wxWidgets静态库3.1.0,可用平台为v140_xp,支持winxp与win7以上版本。
CodeBlocks编译wxWidgets设置.pdf
这是包是在linux上安装wxpython前需要安装的
wxWidgets 2.8.9 编译wowmodelviewer所需要的一个ui库
编译选项中有-shared-libstdc++,这就意味着你移植的时候要在tdm-gcc中把libstdc++的dll放在exe文件旁。 test2文件夹是测试用的 wxWidgets-3.1.0-headers\include 是...编译环境:windows 10 编译软件:TDM-GCC 5.1.0
wxwidgets在windows下的安装使用文件
windows codelite mingw wxwidgets
wxWidgets-3.0.4 mingw32-gcc codeblocks可用版本 自编译
这是一份很完整的介绍windows下如何使用wxWidgets的过程,包括从安装到使用的过程,以及有一个完整的例子供大家参考 之前发的文档损坏了,我刚看到大家的评论,非常抱歉,现在将没有损坏的文档无偿上传上来,文档里...
wxWidgets 2.8.9 all in one, 一个全得版本,在unix得 solaris上测试通过, 效果很好。
Codeblocks+wxWidgets安装及编译
使用Mingw64编译wxWidgets3.0.2,首先得下载wxMSW-Setup-3.0.2.exe(https://sourceforge.net/projects/wxwindows/files/3.0.2/wxMSW-Setup-3.0.2.exe,然后按照如下步骤编译(假设要编译一个Unicode共享库版的...
wxwidgets已编译包,来自http://www.d2school.com/
Windows上配置Code::Blocks + wxWidgets
vs2010 wxWidgets2.9.3 编译 环境配置
wxWidgets-3.0.0 Windows 下的安装包