如何在 Windows for Visual Studio 2005 上设置 WXWIDGETS
how to setup wxwidgets on windows for visual studio 2005
我正在尝试做一些GUI的东西,我想在Windows 7上为Visual Studio 2005设置wxWidget。在过去的几天里,我阅读了可能教程和帮助,但所有这些都显示了不同的方式。它们都不适合我。在包括 c:/wxWidgets-2.9.4/include 和/lib 目录到 Visual Studio 中,但它仍然显示 wx/setup.h 未找到。任何人都可以提供从头开始设置 wxWidget 的教程。(从下载所需的软件包到完整的工作示例)。因为我也很困惑我应该下载哪一个,所以他们提供了许多拉链订单。
@tinman的配方允许你构建eveything,但这需要很长时间。
一个更简单的配方,它只构建必要的库:
-
使用安装包进行安装。
-
找到 Microsoft Visual Studio build 文件夹。 在我的安装上,这是 C:\wxWidgets-2.9.n\build\msw
-
找到适合您的Visual Studio版本(例如wx_vc8.sln)的解决方案并打开它。
-
选择构建应用程序时要使用的配置。 (例如.DLL发布)
-
生成解决方案。
做。 在任何功能合理的机器上,它都应该需要大约五分钟。
有许多zip存档的原因是,从2.9开始,他们为每个MSVC版本提供预构建的二进制包。我从未使用过这些,所以我不能评论这些,但它们可能会为您节省大量构建源代码的时间并为您提供官方库。
我使用了 MSW 安装包并从源代码构建。这就是我所做的,它对我来说效果很好(除了我目前使用 wx292、VS2008 和 Windows 7)。
下载 wxWidgets 2.9.4 MSW 安装包。
安装它。我假设它会在 c:wxWidgets-2.9.4
中创建一个目录。
创建包含以下内容的批处理文件c:wxwidgets-2.9.4build.bat
。您应该将myvendor
替换为您的名称,以便清楚地表明它不是官方的wxWidgets库构建(它将放在文件名中,因此请避免空格)。
@echo off
PUSHD buildmsw
call :make
cd ....samples
call :make
cd ..demos
call :make
cd ..utils
call :make
POPD
GOTO :EOF
@REM Perform builds with all desired configurations
:make
@REM x86 debug & release multiple DLLs Unicode
nmake -f makefile.vc MONOLITHIC=0 SHARED=1 UNICODE=1 BUILD=debug VENDOR=myvendor
nmake -f makefile.vc MONOLITHIC=0 SHARED=1 UNICODE=1 BUILD=release VENDOR=myvendor
@REM x86 debug & release multiple static libs Unicode
nmake -f makefile.vc MONOLITHIC=0 SHARED=0 UNICODE=1 BUILD=debug VENDOR=myvendor
nmake -f makefile.vc MONOLITHIC=0 SHARED=0 UNICODE=1 BUILD=release VENDOR=myvendor
从"开始"菜单打开 Visual Studio 2005 命令提示符。这将正确设置编译器和库的路径。
将目录更改为 wxWidgets: cd c:wxWidgets-2.9.4
。
运行build.bat
它应该在几个小时后完成,具体取决于您的计算机规格,或者您可以REM
示例、实用程序和演示的构建以减少时间(谢谢@ravenspoint)。还可以查看c:wxWidgets-2.9.4samples
中的示例,并从示例项目中获取 Visual Studio 项目设置,以便在你自己的项目(例如 C:wxWidgets-2.9.4samplesdialogsdialogs_vc8.vcproj
)中使用。
构建库后,您最终会在C:wxWidgets-2.9.4lib
下获得一些其他目录,其中包含构建的库、dll 和该变体的任何特定于构建的标头。以下目录是从我的批处理脚本中的生成创建的,并使用工具集(在本例中为 Visual C 的 vc,但可能是特定于版本的,例如 vc80 或固定版本,具体取决于您的构建设置)和库的类型进行标记。 目录和文件名中的msw
表示 Microsoft Windows。 目录和文件名中的u
表示 Unicode。 目录和文件名末尾的d
表示调试。
-
C:wxWidgets-2.9.4libvc_lib
:wxWidgets 的 Visual C (vc) 静态库 (lib) 版本-
C:wxWidgets-2.9.4libvc_libmwsu
:微软视窗Unicode特定文件 -
C:wxWidgets-2.9.4libvc_libmwsud
:Microsoft Windows Unicode 调试特定文件 - 还包含用于发布和调试的静态库的混合
-
-
C:wxWidgets-2.9.4libvc_dll
: wxWidgets 的 Visual C (vc) DLL (dll) 版本-
C:wxWidgets-2.9.4dllvc_libmwsu
:微软视窗Unicode特定文件 -
C:wxWidgets-2.9.4dllvc_libmwsud
:Microsoft Windows Unicode 调试特定文件 - 还包含用于发布和调试的 DLL 和导入库的混合
-
为了在您自己的项目中使用新构建的库,您可以按照以下步骤操作(我使用VS2008,因此某些配置名称可能略有不同):
创建新项目时,需要转到项目属性。
在"配置属性"->"常规"-">环境"下,如果使用的是 DLL,请添加以下内容(以便应用程序可以找到 DLL):
PATH=C:wxWidgets-2.9.4libvc_dll
在 C/C++ -> 常规 -> 其他包含目录下,您需要按以下顺序添加 wxWidgets 包含:
- "C:\wxWidgets-2.9.4\include\msvc"
- "C:\wxWidgets-2.9.4\include"
首先包含目录 1 的原因是该目录中有一个wxsetup.h
。当您包括它时,它会尝试确定哪个编译器、库类型(静态或 DLL)、您是否使用 Unicode 以及它是调试还是发布,它会自动包含来自C:wxWidgets-2.9.4lib
子目录之一的正确真实 wx/setup.h。
然后,您需要转到 C/C++ -> 预处理器 -> 预处理器定义并添加以下行:
__WXMSW__
如果要使用 wxWidgets 的 DLL 版本而不是静态库,则需要添加以下行:
WXUSINGDLL
在"链接器->常规"->"其他链接器目录"下,如果使用静态库,则需要添加以下路径:
"C:wxWidgets-2.9.4libvc_lib"
或者,如果使用 DLL,则为以下路径:
"C:wxWidgets-2.9.4libvc_dll"
在链接器 -> 输入 ->其他依赖项中,您可能需要至少添加以下内容:
comctl32.lib rpcrt4.lib
在"资源"-"常规"->"其他包含目录">下,您需要添加以下路径:
C:wxWidgets-2.9.4include
- 为不同配置设置MSVC_RUNTIME_LIBRARY的正确方法是什么
- 在C++/Linux中设置单调时钟的一些技巧
- 如何在选项卡视图Qt中设置一个新项目,并保存以前的项目
- 嵌套在类中时无法设置成员数据
- 需要帮助设置在C++中使用的Potrace
- 如何在自删除后将对象设置为nullptr
- 将指针设置为"nullptr"并不能防止双重删除?
- 如何在Ubuntu中使用cmake设置qt4
- ld:bind_at_load和-bitcode_bundle(Xcode设置ENABLE_bitcode=YES)不能
- 如何在boost beast http请求中设置http头
- 如何解决gcc编译器优化导致的centos双编译器设置中的分段错误
- 如何将这个C++哈希表转换为动态扩展和收缩,而不是使用硬设置的最大值
- 为什么文件名被设置为一个点,而不是在读取矢量中的文件名时
- 如何在24位SDL_Surface上设置像素的颜色
- std::设置自定义比较器
- 如何设置一个范围来提取我想要获得的信息
- 如何在C/C++中用FD_set Unix设置套接字文件描述符
- 如何在 Windows for Visual Studio 2005 上设置 WXWIDGETS
- 我可以设置visual studio 2005命令行开关在我的代码(即通过pragma/define)
- 在 Visual Studio 2005 中对取消引用的指针的地址设置数据断点