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

一、安装

首先从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. mysql 主从一致性检查

    我上一次遇到MySQL主从服务器数据一致性问题,想想是几年前的事情了,还依稀记得当时惊慌失措的情景,好在最后借助Maatkit解决了问题.几年后,当我再次面对同样的问题时,Maatkit已经不复存在, ...

  2. PHP curl 采集内容之规则 1

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

  3. @using (Html.BeginForm())收集

    一 ,制定表单提交方式和路径 1,指明(视图,控制器,提交方式,参数) <%using(Html.BeginForm("Index","Home",For ...

  4. jquery验证网址格式

    在input中输入网址,用jquery验证输入网址是否正确 <input type="text" name="input-web" class=" ...

  5. php操作memcache的用法、详解和方法介绍

    1.简介 memcache模块是一个高效的守护进程,提供用于内存缓存的过程式程序和面向对象的方便的接口,特别是对于设计动态web程序时减少对数据库的访问. memcache也提供用于通信对话(sess ...

  6. Python学习笔记——正则表达式入门

    # 本文对正则知识不做详细解释,仅作入门级的正则知识目录. 正则表达式的强大早有耳闻,大一时参加一次选拔考试,题目就是用做个HTML解析器,正则的优势表现得淋漓尽致.题外话不多讲,直接上干货: 1. ...

  7. REST API之前端跨域访问

    关键字:跨域访问,cross-origin, NodeJS, REST API, JavaScript, Access-Control-Allow-Origin 1.新建并运行一个 NodeJS的se ...

  8. 2016031601 - 刻录ubuntu的U盘启动盘

    使用UltraISO来刻录ubuntu15.1的系统安装盘. 需要U盘1个,ubuntu15.1系统镜像文件. 具体步骤如下: a.安装UltraISO软件,具体软件安装. b.安装完成后进行系统刻录 ...

  9. POJ 3687 Labeling Balls 逆向建图,拓扑排序

    题目链接: http://poj.org/problem?id=3687 要逆向建图,输入的时候要判重边,找入度为0的点的时候要从大到小循环,尽量让编号大的先入栈,输出的时候注意按编号的顺序输出重量, ...

  10. UITextView -- 基础备忘

    UITextView 这篇文章只涉及到基本的使用,日后会写一些关于结合TextKit的备忘 基本属性 let screenSize = UIScreen.mainScreen().bounds.siz ...