【问题标题】:how to setup wxwidgets on windows for visual studio 2005如何在 Windows 上为 Visual Studio 2005 设置 wxwidgets
【发布时间】:2012-08-03 17:16:37
【问题描述】:

我正在尝试做一些 GUI 的东西,我想在 Windows 7 上为 Visual Studio 2005 设置 wxWidget。我在过去几天阅读了可能的教程和帮助,但它们都显示了不同的方式。他们都不适合我。在包含 c:/wxWidgets-2.9.4/include 和 /lib 目录到 Visual Studio 但仍然显示 wx/setup.h 未找到。 任何人都可以提供从头开始设置 wxWidget 的教程。(从下载所需的包到完整的工作示例)。因为我也很困惑我应该下载哪一个,所以他们提供了许多 zip forders。

【问题讨论】:

    标签: c++ user-interface visual-studio-2005 installation wxwidgets


    【解决方案1】:

    @tinman 的配方可以让您构建任何东西,但需要很长时间。

    一个更简单的配方,它只构建必要的库:

    • 使用安装包进行安装。

    • 找到 microsoft visual studio build 文件夹。在我的安装中,这是 C:\wxWidgets-2.9.n\build\msw

    • 找到适用于您的 Visual Studio 版本的解决方案(例如 wx_vc8.sln)并打开它。

    • 选择您在构建应用程序时要使用的配置。 (例如 DLL 发布)

    • 构建解决方案。

    完成。在任何相当强大的机器上都应该需要大约 5 分钟。

    【讨论】:

      【解决方案2】:

      有许多 zip 存档的原因是,从 2.9 开始,它们为每个 MSVC 版本提供了预构建的二进制包。我从来没有使用过这些,所以我无法对它们发表评论,但它们可能会为您节省大量构建源代码的时间并为您提供官方库。

      我使用了 MSW 安装包并从源代码构建。这就是我所做的,对我来说效果很好(除了我目前使用 wx292、VS2008 和 Windows 7)。

      下载wxWidgets 2.9.4 MSW setup package

      安装它。我假设它会在c:\wxWidgets-2.9.4 中创建一个目录。

      使用以下内容创建一个批处理文件c:\wxwidgets-2.9.4\build.bat。你应该用你的名字替换myvendor,这样很明显它不是一个官方的wxWidgets库构建(它会放在文件名中,所以避免空格)。

      @echo off
      PUSHD build\msw
      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.4\samples 中的示例,并从示例项目中获取 Visual Studio 项目设置以在您自己的项目中使用(例如 C:\wxWidgets-2.9.4\samples\dialogs\dialogs_vc8.vcproj)。

      构建库后,您最终会在C:\wxWidgets-2.9.4\lib 下看到一些额外的目录,其中包含构建的库、dll 和该变体的任何构建特定标头。以下目录是从我的批处理脚本中的构建创建的,并使用工具集(在本例中为 Visual C 的 vc,但可能是特定于版本的,例如 vc80 或固定版本,具体取决于您的构建设置)和库类型.目录和文件名中的msw 表示 Microsoft Windows。目录和文件名中的u 表示Unicode。目录和文件名末尾的d 表示调试。

      • C:\wxWidgets-2.9.4\lib\vc_lib:wxWidgets 的 Visual C (vc) 静态库 (lib) 版本
        • C:\wxWidgets-2.9.4\lib\vc_lib\mwsu: MicroSoft Windows Unicode 特定文件
        • C:\wxWidgets-2.9.4\lib\vc_lib\mwsud: MicroSoft Windows Unicode Debug 特定文件
        • 还包含用于发布和调试的混合静态库
      • C:\wxWidgets-2.9.4\lib\vc_dll: wxWidgets 的 Visual C (vc) DLL (dll) 版本
        • C:\wxWidgets-2.9.4\dll\vc_lib\mwsu: MicroSoft Windows Unicode 特定文件
        • C:\wxWidgets-2.9.4\dll\vc_lib\mwsud:MicroSoft Windows Unicode Debug 特定文件
        • 还包含用于发布和调试的 DLL 和导入库的混合体

      为了在您自己的项目中使用新构建的库,您可以按照以下步骤操作(我使用的是 VS2008,因此某些配置名称可能会略有不同):

      当您创建一个新项目时,您需要转到项目属性。

      如果您正在使用 DLL,请在配置属性 -> 常规 -> 环境下添加以下内容(以便您的应用程序可以找到 DLL):

      PATH=C:\wxWidgets-2.9.4\lib\vc_dll
      

      在 C/C++ -> General -> Additional Include Directories 下,您需要按以下顺序添加 wxWidgets 包含:

      1. “C:\wxWidgets-2.9.4\include\msvc”
      2. “C:\wxWidgets-2.9.4\include”

      首先包含目录 1 的原因是该目录中有一个wx\setup.h。当您包含它时,它会尝试确定什么编译器、库类型(静态或 DLL)、您是否使用 Unicode 以及它是调试还是发布,它会自动包含来自以下之一的正确的真实 wx/setup.h C:\wxWidgets-2.9.4\lib 的子目录。

      然后您需要转到 C/C++ -> Preprocessor -> Preprocessor Definitions 并添加以下行:

      __WXMSW__
      

      如果你想使用 wxWidgets 的 DLL 版本而不是静态库你需要添加以下行:

      WXUSINGDLL
      

      在链接器 -> 常规 -> 附加链接器目录下,如果您使用静态库,则需要添加以下路径:

      "C:\wxWidgets-2.9.4\lib\vc_lib"
      

      如果您正在使用 DLL,则使用以下路径:

      "C:\wxWidgets-2.9.4\lib\vc_dll"
      

      在链接器 -> 输入 -> 附加依赖项中,您可能需要至少添加以下内容:

      comctl32.lib rpcrt4.lib
      

      在 Resources -> General -> Additional Include Directories 下,您需要添加以下路径:

      C:\wxWidgets-2.9.4\include
      

      【讨论】:

      • "它应该在几个小时后完成,具体取决于您的计算机规格"哇!那似乎很长一段时间。在我的机器上(3GHz,4 核)大约需要 10 分钟。
      • 哦,我明白为什么要花这么长时间了。您正在构建演示和示例。将这些排除在外,单独构建库会花费更合理的时间。
      • 现在我遇到了另一个问题。 wxWidgets 中的示例程序运行正确,但是当我创建一个新项目并使用标题 wx/window.h 或 wx/wx.h 时,它显示错误 fatal error C1083: Cannot open include file: 'wx/setup.h': No such file or directory
      • 我跟着他们,还找到了一些设置项目的指南,但没有工作。我仍然收到相同的 wx/setup.h 错误。如果我更改之前工作的示例项目的位置,我也会得到同样的错误(即使我在设置中更改了正确的 \lib 和 \include 目录路径)
      • 这是完整的错误1>C:\wxWidgets-2.9.4\include\wx/platform.h(154) : fatal error C1083: Cannot open include file: 'wx/setup.h': No such file or directory,如果平台前的斜线是正确的,但我不知道它从哪里来或生成
      猜你喜欢
      • 1970-01-01
      • 2016-10-25
      • 1970-01-01
      • 1970-01-01
      • 2010-09-12
      • 1970-01-01
      • 1970-01-01
      • 2018-06-10
      • 1970-01-01
      相关资源
      最近更新 更多