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

一、安装

首先从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. HttpUtility.HtmlEncode

    HttpUtility.HtmlEncode用来防止站点受到恶意脚本注入的攻击 public string Welcome(string name, int numTimes = 1) {     r ...

  2. Jquery操作单选按钮(Radio)的取值赋值实现代码

    1.获取选中值,三种方法都可以: $('input:radio:checked').val(); $("input[type='radio']:checked").val(); $ ...

  3. C# DES

    using System; //这个是使用DES的基础 using System.Security.Cryptography; //这个是处理文字编码的前提 using System.Text; // ...

  4. 解决 nginx 返回数据不完整的方法

    通过PHP请求接口时发现接口的内容输出没有完整的返回整个数据,早上只修改了nginx api_metrics插件里的计算response大小的代码,观察日志发现一条: 2012/08/28 02:13 ...

  5. oracle工具 sqlplus 用户管理

    可以通过system用户对普通用户解锁.alter user scott account unlock; 工具:1/ sqlplusw sqlplus 自带.调用oracle安装目录下bin目录下的e ...

  6. C语言-03流程控制

    1.选择结构 char c = '+'; ; ; // 如果要在case后面定义新的变量,必须用大括号{}包住 注意变量的作用域的紊乱 if语句不加括号时,也要注意此问题 switch (c) { c ...

  7. POJ 2442 Sequence 优先队列

    题目: http://poj.org/problem?id=2442 #include <stdio.h> #include <string.h> #include <q ...

  8. 图片Base64编码 简单使用

    图片在线转换Base64,图片编码base64 http://tool.css-js.com/base64.html HTML5 + js <input type="file" ...

  9. Cocoa Touch 框架

    Cocoa Touch包括: (1)Core Animation: 通过Core Animation,可以通过一个基于独立图层的简单的编程模型来创建丰富的用户体验. (2)Core Audio: Co ...

  10. nump中的为随机数产生器的seed

    在python的程序中,发现了如下的伪随机数产生的代码 rng = numpy.random.RandomState(23355) arrayA = rng.uniform(0,1,(2,3)) 该段 ...