教程摘自网上各大博客、贴吧、论坛,结合自己的实践做了一些实质性的修改。

一、安装

首先从http://sourceforge.net/projects/wxwindows/files/2.8.12/wxMSW-2.8.12-Setup.exe/download上下载wxWidgets2.8.12。

建议将其安装某个驱动器的根目录下,比如:E:\ wxWidgets-2.8.12 目录下(尾部数字以您所使用的wxWidgets版本为准)。

二、编译

上一步安装wxWidgets,仅得到源代码文件及一些说明。我们还需要将其中的源代码编译成“库”文件。

今天我们将把wxWidgets编译译成四种形式:
动态链接库 + 调试版
动态链接库 + 发行版
静态链接库 + 调试版
静态链接库 + 发行版

正式开始编译之前,必须确保已经在电脑上正确安装好mingw32环境,安装C::B时选择MINGW版,就会在C::B目录下安装MINGW编译器。

并保证环境变量设置好:

右击我的电脑→属性→高级系统设置→环境变量→选择path变量(如果没有的话新建path变量)

→编辑path变量(不同的变量值之间用;隔开)→在变量值中输入“E:\CodeBlocks\MinGW\bin;E:\CodeBlocks\MinGW\include;E:\CodeBlocks\MinGW\lib;”(如果你的MINGW安装路径不同,求按照你的路径输入)

(以下四个版本都需要编译,而不是仅编译其一)

(1)静态链接(调试版)

步骤1:用记事本打开wxWidgets安装目录下,子目录“build\msw\”下面的“config.gcc”文件。

步骤2:找到以下内容,并确保将等号(?=)后面的值如下面内容所示。另外其它未指部分的内容,请保持不变。

步骤3:请确认保存了本步的修改成果,再继续下一步。

# What type of library to build? [0,1]
SHARED := 0

# Compile Unicode build of wxWidgets? [0,1]
UNICODE := 1

# Type of compiled binaries [debug,release]
BUILD := debug

步骤4:

SHARED 为 0表示要编译的是静态库,而不是动态库;
UNICODE为1,表示要编译成UNICODE版本,这一项在本次编译过程中始终为1。
BUILD为debug,表示要编译成含有调试信息的版本。

步骤5:

打开“开始”菜单,选择“运行”,输入cmd,进入控制台窗口,然后在其内通过cd命令,切换到wxWidgets安装目录下的“build\msw”路径。比如您把wxWidgets
安装在“E:\wxWidgets-2.8.12”,则过程如下:

E: (回车)

cd wxWidgets-2.8.12(回车)
cd build\msw (回车)

步骤6:在第5步的控制台中,继续输入以下命令:

mingw32-make.exe -f makefile.gcc (回车)

步骤7:这将开始一段长约30分钟的编译过程(视你的机器配置而定)。

(2)静态链接(发行版)

编译过程和前一版本主要差别在于“config.gcc”文件的修改内容:

# What type of library to build? [0,1]
SHARED := 0

# Compile Unicode build of wxWidgets? [0,1]
UNICODE := 1

# Type of compiled binaries [debug,release]
BUILD := release

其它操作方法不变。

(3)动态链接(调试版)

编译过程和前一版本主要差别在于“config.gcc”文件的修改内容:

# What type of library to build? [0,1]
SHARED := 1

# Compile Unicode build of wxWidgets? [0,1]
UNICODE := 1

# Type of compiled binaries [debug,release]
BUILD := debug

其它操作方法不变。

(4)动态链接(发行版)

编译过程和前一版本主要差别在于“config.gcc”文件的修改内容:

# What type of library to build? [0,1]
SHARED := 1

# Compile Unicode build of wxWidgets? [0,1]
UNICODE := 1

# Type of compiled binaries [debug,release]
BUILD := release

其它操作方法不变。

三、结束

这是一次漫长的编译过程,至此,我们完成了四个版本的wxWidgets库的编译。它是我们编写图形用户界面基础。

为了确保大家尽量顺利地完成编译,我们在“config.gcc”仅选择了最基本的编译选项。因此一些强大wxWidgets功能模块没有被编译成库,比如前面提到的非Unicode版,另外没有支持OpenGL、OBDC等功能。后面需要时,我们将会加上,并且令大家放心的是,这并不会带来又一次wxWidgets漫长完全编译。

MSW下wxWidgets的安装与编译的更多相关文章

  1. wxWidgets笔记_1_linux环境下wxwidgets的安装与配置

    linux下wxwidgets环境的安装与配置 一.建立目标文件夹(自己定义) mkdir /opt/SCOTT 二.安装wxWidgets 1.wxWidgets版本号能够选用wxGTK-2.8.1 ...

  2. centos7.2下caffe的安装及编译

    1.前期准备 安装依赖 sudo yum install protobuf-devel leveldb-devel snappy-devel opencv-devel boost-devel hdf5 ...

  3. Linux下源码安装redis,编译安装

    1.下载redis源码 [root@localhost opt]# wget http://download.redis.io/releases/redis-4.0.10.tar.gz 2.解压缩 [ ...

  4. linux下boost的安装与编译

    1.从boost官网下载boost库包: 2.然后解压到linux下的任意一个文件夹, 3.进入boost_1_57文件夹下,不同的boost版本会解压城不同的库文件夹, 4.执行././bootst ...

  5. wxWidgets的安装编译、相关配置、问题分析处理

    wxWidgets的安装编译.相关配置.问题分析处理 一.介绍部分 (win7 下的 GUI 效果图见 本篇文章的最后部分截图2张) wxWidgets是一个开源的跨平台的C++构架库(framewo ...

  6. windows平台下安装、编译、使用mongodb C++ driver

    本博客将记录在Win8.1 ,VS2013环境下编译.配置mongodb C++ driver的流程. 1.下载预备 下载Boost:http://sourceforge.net/projects/b ...

  7. [转]Caffe在Linux下的安装,编译,实验

    Caffe在Linux下的安装,编译,实验  原文地址:http://www.cnblogs.com/evansyang/p/6150118.html 第一部分:Caffe 简介 caffe是有伯克利 ...

  8. 在VS2012下不安装VS2010编译VS2010的工程

    虽然一路追随这VISUAL SUTDIO在编程,但是断档的情况还是有的,最近一次硬盘问题使得安装了所有的VS2003-VS2012的机器硬盘挂了,无奈只能够安装了,不过觉得没啥用了,就安装一个VS20 ...

  9. 配置 Windows 下的 nodejs C++ 模块编译环境 安装 node-gyp

    配置 Windows 下的 nodejs C++ 模块编译环境 根据 node-gyp 指示的 Windows 编译环境说明, 简单一句话就是 "Python + VC++ 编译环境&quo ...

随机推荐

  1. 24种设计模式--状态模式【State Pattern】

    现在城市发展很快,百万级人口的城市一堆一堆的,那其中有两个东西的发明在城市的发展中起到非常重要的作用:一个是汽车,一个呢是...,猜猜看,是什么?是电梯!汽车让城市可以横向扩展,电梯让城市可以纵向延伸 ...

  2. Nginx中让 重写后的路径 自动增加斜线 /

    http://www.111cn.net/sys/nginx/56067.htm(参考文章) 现在有个这样的需求,在重写的url地址后,自动加斜线 / 例如 xx.com/abc/1-2  (默认ur ...

  3. 自己动手丰衣足食,h5手机端jquery弹窗插件(事件冒泡、单例模式、遮盖部分禁止默认滚动)

    感谢浏览,欢迎交流=.= 公司开发微信网页多处需要使用弹窗,使用jquery-ui的定制化下载仍需要150多kb,想来有些奢侈(最终下来只有11kb,压缩后2kb,啊,我的神), 手机端弹窗方式与pc ...

  4. PHP curl 采集内容之规则 及图片下载方法2

    <?phpheader("Content-type:text/html; charset=utf-8");/*$pattern = '/xxx(.*)yyyy/isU'; / ...

  5. HTML5格式化

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  6. tree命令

    tree命令以树状图列出目录的内容. 1.语法 tree(选项)(参数) 2.选项 -a:显示所有文件和目录: -A:使用ASNI绘图字符显示树状图而非以ASCII字符组合: -C:在文件和目录清单加 ...

  7. 关于Matlab作图的若干问题

          看到了北京一则新闻,想到如何测试双向镜子?百度之.              只要做以下简单的测试:把你的指甲尖放在镜子表面,如果在指甲尖与倒映图像之间有间隙,那就是真的镜子.然而,如果你 ...

  8. What does it mean for an algorithm to be fair

    What does it mean for an algorithm to be fair In 2014 the White House commissioned a 90-day study th ...

  9. uva 1396 - Most Distant Point from the Sea

    半平面的交,二分的方法: #include<cstdio> #include<algorithm> #include<cmath> #define eps 1e-6 ...

  10. javascript小小技巧

    JS的一些小技巧,我主要是做后台的(.NET),前端知识了解得不多,经验非常有限,不过还是经常写JS代码,对前端有着浓厚的兴趣,特喜欢js这门语言,虽然很多人喷它,但还是很喜欢Js.下面说说项目中我经 ...