Compile Widget -wxWidgets-2.8.9在VC++ 2005 环境下的安装与配置
2011-06-28 14:29
435 查看
补充
分别编译两套静态库和两套动态库
SHARE = 0 UNICODE = 0 BUILD = debug
SHARE = 0 UNICODE = 0 BUILD = release
SHARE = 1 UNICODE = 0 BUILD = debug
SHARE = 1 UNICODE = 0 BUILD = release
以下是教程
1. 在http://www.wxwidgets.org/downloads上下载wxMSW-2.8.9.zip,并将其解压缩至D:"wxWidgets-2.8.9
2. 编译wxWidgets。
打开Visual Studio 2005 Command Prompt命令行环境,进入D:"wxWidgets-2.8.9"build"msw目录,找到config.vc并用文本编辑器打开。
这里要修改一些选项,选项的解释如下
SHARE: 编译产生的wxWidgets库是静态库还是动态库
UNICODE: 是否支持unicode
BUILD: 编译产生的库是用于debug或release
分别编译两套静态库和两套动态库
SHARE = 0 UNICODE = 1 BUILD = debug
SHARE = 0 UNICODE = 1 BUILD = release
SHARE = 1 UNICODE = 1 BUILD = debug
SHARE = 1 UNICODE = 1 BUILD = release
按照上面修改了config.vc后, 分别执行四次nmake -f makefile.vc
编译完成后会在build"msw目录下产生四个临时文件夹vc_mswu vc_mswud vc_mswuddll vc_mswudll,而编译产生的.lib和.dll文件则分别放在lib"vc_lib和lib"vc_dll下。
3. 在vc++环境中设置wxWidgets的头文件和库文件目录
打开VC++菜单Tools->Options...->Projects and Solutions->VC++ Directories添加如下内容:
Include files: D:"wxWidgets-2.8.9"include
D:"wxWidgets-2.8.9"include"msvc
Library files: D:"wxWidgets-2.8.9"lib"vc_lib
4. 测试
myWxApp.h文件
#ifndef MYWXAPP_H
#define MYWXAPP_H
#include <wx/wx.h>
class myWxApp: public wxApp
{
public:
myWxApp(void);
~myWxApp(void);
virtual bool OnInit();
};
DECLARE_APP(myWxApp)
#endif
myWxApp.cpp文件
#include "myWxApp.h"
IMPLEMENT_APP(myWxApp)
bool myWxApp::OnInit()
{
wxFrame *frame = new wxFrame((wxFrame*)NULL, -1,
wxT("wxWidgets Application"), wxPoint(100,70), wxSize(640,480));
frame->CreateStatusBar(2);
frame->SetStatusText(wxT("Hello World"));
frame->Show(TRUE);
SetTopWindow(frame);
return true;
}
在运行Debug和Release版本前配置Configuration Properties如下
Debug:
Configuration Properties"C/C++"Preprocessor"Preprocessor Definitions:
WIN32;__WXMSW__;_WINDOWS;_DEBUG;__WXDEBUG__
Configuration Properties"C/C++"Code Generation"Runtime Library:
Multi-threaded Debug(/MTd)
Configuration Properties"Linker"Input"Additional Dependencies:
comctl32.lib rpcrt4.lib
Configuration Properties"Linker"Debugging"Generate Debug Info:
Yes(/DEBUG)
Release:
Configuration Properties"C/C++"Preprocessor"Preprocessor Definitions:
WIN32;__WXMSW__;_WINDOWS
Configuration Properties"C/C++"Code Generation"Runtime Library:
Multi-threaded Debug(/MT)
Configuration Properties"Linker"Input"Additional Dependencies:
comctl32.lib rpcrt4.lib
配置
Debug配置
添加预处理
WIN32
_DEBUG
__WXMSW__
__WXDEBUG__
_WINDOWS
NOPCH
添加依赖项
wxbase28d.lib
wxmsw28d_core.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
oleacc.lib
Release配置
添加预处理
WIN32
_WINDOWS
NDEBUG
添加依赖项
wxbase28.lib
wxmsw28_core.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
oleacc.lib
Unicode Debug配置
WIN32
_DEBUG
__WXMSW__
__WXDEBUG__
_WINDOWS
NOPCH
添加依赖项
wxbase28ud.lib
wxmsw28ud_core.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
oleacc.lib
Unicode Release配置
WIN32
NDEBUG
_WINDOWS
添加依赖项
wxbase28u.lib
wxmsw28u_core.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
oleacc.lib
使用VC9编译wxWidgets,在wxWidgets的”build/msw/“使用如下批处理命令:
rem 设置vs的环境变量
set oldpath=%path%
set path="C:"Program Files"Microsoft Visual Studio 9.0"Common7"Tools";%path%
call vsvars32.bat
REM ~ nmake -f makefile.vc BUILD=debug SHARED=1 MONOLITHIC=1 UNICODE=1 clean
nmake -f makefile.vc BUILD=debug SHARED=0 MONOLITHIC=0 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1 clean
nmake -f makefile.vc BUILD=release SHARED=0 MONOLITHIC=0 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=debug SHARED=0 MONOLITHIC=0 UNICODE=1 clean
nmake -f makefile.vc BUILD=debug SHARED=1 MONOLITHIC=0 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=release SHARED=0 MONOLITHIC=0 UNICODE=1 clean
nmake -f makefile.vc BUILD=release SHARED=1 MONOLITHIC=0 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=debug SHARED=1 MONOLITHIC=1 UNICODE=1 clean
nmake -f makefile.vc BUILD=debug SHARED=0 MONOLITHIC=1 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1 clean
nmake -f makefile.vc BUILD=release SHARED=0 MONOLITHIC=1 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=debug SHARED=0 MONOLITHIC=0 UNICODE=1 clean
nmake -f makefile.vc BUILD=debug SHARED=1 MONOLITHIC=1 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=release SHARED=0 MONOLITHIC=0 UNICODE=1 clean
nmake -f makefile.vc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1
set path=%oldpath%
pause
分别编译两套静态库和两套动态库
SHARE = 0 UNICODE = 0 BUILD = debug
SHARE = 0 UNICODE = 0 BUILD = release
SHARE = 1 UNICODE = 0 BUILD = debug
SHARE = 1 UNICODE = 0 BUILD = release
以下是教程
1. 在http://www.wxwidgets.org/downloads上下载wxMSW-2.8.9.zip,并将其解压缩至D:"wxWidgets-2.8.9
2. 编译wxWidgets。
打开Visual Studio 2005 Command Prompt命令行环境,进入D:"wxWidgets-2.8.9"build"msw目录,找到config.vc并用文本编辑器打开。
这里要修改一些选项,选项的解释如下
SHARE: 编译产生的wxWidgets库是静态库还是动态库
UNICODE: 是否支持unicode
BUILD: 编译产生的库是用于debug或release
分别编译两套静态库和两套动态库
SHARE = 0 UNICODE = 1 BUILD = debug
SHARE = 0 UNICODE = 1 BUILD = release
SHARE = 1 UNICODE = 1 BUILD = debug
SHARE = 1 UNICODE = 1 BUILD = release
按照上面修改了config.vc后, 分别执行四次nmake -f makefile.vc
编译完成后会在build"msw目录下产生四个临时文件夹vc_mswu vc_mswud vc_mswuddll vc_mswudll,而编译产生的.lib和.dll文件则分别放在lib"vc_lib和lib"vc_dll下。
3. 在vc++环境中设置wxWidgets的头文件和库文件目录
打开VC++菜单Tools->Options...->Projects and Solutions->VC++ Directories添加如下内容:
Include files: D:"wxWidgets-2.8.9"include
D:"wxWidgets-2.8.9"include"msvc
Library files: D:"wxWidgets-2.8.9"lib"vc_lib
4. 测试
myWxApp.h文件
#ifndef MYWXAPP_H
#define MYWXAPP_H
#include <wx/wx.h>
class myWxApp: public wxApp
{
public:
myWxApp(void);
~myWxApp(void);
virtual bool OnInit();
};
DECLARE_APP(myWxApp)
#endif
myWxApp.cpp文件
#include "myWxApp.h"
IMPLEMENT_APP(myWxApp)
bool myWxApp::OnInit()
{
wxFrame *frame = new wxFrame((wxFrame*)NULL, -1,
wxT("wxWidgets Application"), wxPoint(100,70), wxSize(640,480));
frame->CreateStatusBar(2);
frame->SetStatusText(wxT("Hello World"));
frame->Show(TRUE);
SetTopWindow(frame);
return true;
}
在运行Debug和Release版本前配置Configuration Properties如下
Debug:
Configuration Properties"C/C++"Preprocessor"Preprocessor Definitions:
WIN32;__WXMSW__;_WINDOWS;_DEBUG;__WXDEBUG__
Configuration Properties"C/C++"Code Generation"Runtime Library:
Multi-threaded Debug(/MTd)
Configuration Properties"Linker"Input"Additional Dependencies:
comctl32.lib rpcrt4.lib
Configuration Properties"Linker"Debugging"Generate Debug Info:
Yes(/DEBUG)
Release:
Configuration Properties"C/C++"Preprocessor"Preprocessor Definitions:
WIN32;__WXMSW__;_WINDOWS
Configuration Properties"C/C++"Code Generation"Runtime Library:
Multi-threaded Debug(/MT)
Configuration Properties"Linker"Input"Additional Dependencies:
comctl32.lib rpcrt4.lib
配置
Debug配置
添加预处理
WIN32
_DEBUG
__WXMSW__
__WXDEBUG__
_WINDOWS
NOPCH
添加依赖项
wxbase28d.lib
wxmsw28d_core.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
oleacc.lib
Release配置
添加预处理
WIN32
_WINDOWS
NDEBUG
添加依赖项
wxbase28.lib
wxmsw28_core.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
oleacc.lib
Unicode Debug配置
WIN32
_DEBUG
__WXMSW__
__WXDEBUG__
_WINDOWS
NOPCH
添加依赖项
wxbase28ud.lib
wxmsw28ud_core.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
oleacc.lib
Unicode Release配置
WIN32
NDEBUG
_WINDOWS
添加依赖项
wxbase28u.lib
wxmsw28u_core.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
oleacc.lib
使用VC9编译wxWidgets,在wxWidgets的”build/msw/“使用如下批处理命令:
rem 设置vs的环境变量
set oldpath=%path%
set path="C:"Program Files"Microsoft Visual Studio 9.0"Common7"Tools";%path%
call vsvars32.bat
REM ~ nmake -f makefile.vc BUILD=debug SHARED=1 MONOLITHIC=1 UNICODE=1 clean
nmake -f makefile.vc BUILD=debug SHARED=0 MONOLITHIC=0 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1 clean
nmake -f makefile.vc BUILD=release SHARED=0 MONOLITHIC=0 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=debug SHARED=0 MONOLITHIC=0 UNICODE=1 clean
nmake -f makefile.vc BUILD=debug SHARED=1 MONOLITHIC=0 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=release SHARED=0 MONOLITHIC=0 UNICODE=1 clean
nmake -f makefile.vc BUILD=release SHARED=1 MONOLITHIC=0 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=debug SHARED=1 MONOLITHIC=1 UNICODE=1 clean
nmake -f makefile.vc BUILD=debug SHARED=0 MONOLITHIC=1 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1 clean
nmake -f makefile.vc BUILD=release SHARED=0 MONOLITHIC=1 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=debug SHARED=0 MONOLITHIC=0 UNICODE=1 clean
nmake -f makefile.vc BUILD=debug SHARED=1 MONOLITHIC=1 UNICODE=1
REM ~ nmake -f makefile.vc BUILD=release SHARED=0 MONOLITHIC=0 UNICODE=1 clean
nmake -f makefile.vc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1
set path=%oldpath%
pause
相关文章推荐
- wxWidgets-2.8.9在VC++ 2005 环境下的安装与配置
- wxWidgets-2.8.9在VC++ 2005 Express环境下的安装与配置
- [转]wxWidgets-2.8.9在VC++ 2005 环境下的安装与配置
- QT-4.4.1在VC++ 2005 Express环境下的安装,编译,配置
- VC2005程序的一个运行错误 由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。
- 安装软件配置VC++环境时常出现的问题--Error 1935.安装程序集
- DirectX9 SDK 下载、安装、VC++开发环境配置、跑通第一个例子
- 在VC2005下配置OGRE环境时,遇到的问题总结
- wxWidgets笔记_1_linux环境下wxwidgets的安装与配置
- OpenCV的安装与VC环境的配置(笔记)
- OpenCV2.2 在VC 2005中安装、配置以及示例
- 在vc中使用xtremetoolkit界面库-----安装及环境配置
- VC2005程序的一个运行错误 由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。
- win8.1环境下的VC14+Apache2.4+php7+Oracle10.2安装配置
- 在VS2008中配置WDK7600驱动开发环境 VC6 + 最新WDK7600 驱动开发的安装配置
- 在vc中使用xtremetoolkit界面库-----安装及环境配置
- 【转】vc2005 与 qt-win-opensource-4.7.3-vs2008.exe 环境配置
- wxwidgets安装环境配置
- wxWidgets在vc2005下的配置 和 使用注意!!
- 安装软件配置VC++环境时常出现的问题--Error 1935.安装程序集