Wxwidget 3.1.0将与Visual Studio 2017一起使用

时间:2017-08-16 00:01:38

标签: c++ visual-studio-2017 wxwidgets

我尝试按照以下帖子中的建议构建wxWidget库

How to set up wxWidgets 3.1.0 with Visual Studio 2015

只是向您介绍一下,这些是提到的步骤

  1. 抓住消息来源。
  2. 打开消息来源。
  3. 打开VS IDE。
  4. 打开\ build \ msw \ wx-vc14.sln(根据需要进行调整。)
  5. 转到"构建 - >批量构建...",单击"全选","构建"。
  6. 去喝点咖啡或看电视。
  7. 构建完成后,打开wxWidgets / samples / minimal / minimal_vc9.sln。
  8. 让MSVC将解决方案转换为适当的格式。
  9. 构建并运行示例。
  10. 当我在选择全部后点击构建(步骤5)时,我遇到了很多错误。 这是由于wxWidget文件与Visual Studio 2017不兼容吗?

    This is the error description

    根据这个描述,我应该更改项目属性,但我不确定,将Project属性更改为什么?我只需要开发简单的Windows应用程序。

    我是这方面的新手,我最近完成了学习C ++并希望开发一些Windows应用程序,所以从wxWidgets开始。

2 个答案:

答案 0 :(得分:1)

这是一个奇怪的错误,没有明显的原因,因为据我所见," 8.1" SDK版本在wxWidgets项目中的任何地方都没有硬编码。

解决方法:

  1. [相同] 打开\ build \ msw \ wx-vc14.sln(根据需要进行调整。)

    4.1。选择Solution Explorer中的所有项目(点击_custom_build,按Shift,点击xrc);

    4.2。右键单击所选项目,然后选择Properties;在顶部选择Configuration: All ConfigurationsPlatform: All Platforms和左侧Configuration Properties - > General;

    4.3。 Windows SDK Version很可能会显示8.1,双击它,它会选择VS附带的10.x SDK版本。

    4.4。点击OK

  2. 转到"构建 - >构建解决方案"。

  3. 少喝咖啡,因为多芯咖啡应少花几分钟。

  4. [相同] 构建完成后,打开wxWidgets / samples / minimal / minimal_vc9.sln。

  5. [相同] 让MSVC将解决方案转换为适当的格式。

    8.1。对当前样本重复步骤4.24.4;

  6. [相同] 构建并运行示例。

  7. 值得一提的是,安装SDK 8.1(从VS或独立版)没有任何区别。我想某处肯定会有一个错误,但并不是那么明显。

答案 1 :(得分:1)

我个人尝试了几次上面提到的方法但是它没能在我的VS2017 15.5.2上构建,所以我搜索并发现最好的方法是提到here,总结(引用)

  1. 打开一个" Visual Studio命令提示符"窗口快捷方式 必须已安装到"开始"菜单或"开始"屏幕 通过MSVS安装。

  2. 将目录更改为%WXWIN%\ build \ msw并键入

    > nmake /f makefile.vc
    

    将默认调试配置中的wxWidgets构建为静态 图书馆。你也可以

    > nmake /f makefile.vc BUILD=release
    

    构建发布版本或

    > nmake /f makefile.vc BUILD=release SHARED=1
    

    构建一个发布DLL版本。最后,您还可以添加 " TARGET_CPU = X64"到nmake命令行来构建Win64版本 (这只适用于使用64位编译器的情况。)

  3. 对于x64 build,命令变为:

        > nmake /f makefile.vc TARGET_CPU=X64
        > nmake /f makefile.vc BUILD=release TARGET_CPU=X64
    

    参见"配置构建"有关的更多信息    可以在命令行中指定的其他参数。

    1. 要验证您的构建,请将目录更改为samples \ minimal和 运行相同的nmake命令(在那里使用相同的参数),这个 应该创建一个有效的最小wxWidgets样本。
    2. 希望这会有所帮助!