配置和构建 wxWidgets 时链接器工具出错 Visual Studio 2017

Linker Tools Error while configured and build wxWidgets Visual Studio 2017

无法在 Visual Studio 2017 年配置 wxwidgets。

执行了这些步骤。

Microsoft Visual Studio 17 V15.9.20 中创建了一个空项目。添加了一个 simple wxWidgets 程序。

project properties 中进行了以下更改 - 在 All Configurations 平台 Win32 中,将 Configuration Properties -> Character Set 设置为 Use Unicode Character Set

Environment Variables

中进行了这些更改

在项目属性 Release 配置中,进行了这些更改 C/C++ -> Preprocessor -> Preprocessor Defenitions -> __WXMSW__;WXUSINGDLL;NDEBUG;

没有代码错误但是Linker Tools Error

Error (active)  E1097   unknown attribute "no_init_all" WxWidgets_Application_5 C:\Program Files (x86)\Windows Kits\Include.0.18362.0\um\winnt.h  

Error LNK2019 unresolved external symbol _main referenced in function "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) WxWidgets_Application_3 C:\Users\varun\Desktop\workspace\visual_studio_projects_2017\WxWidgets_Application_3\WxWidgets_Application_3\MSVCRTD.lib(exe_main.obj)

Error LNK1120 1 unresolved externals WxWidgets_Application_3 C:\Users\varun\Desktop\workspace\visual_studio_projects_2017\WxWidgets_Application_3\Debug\WxWidgets_Application_3.exe 

可能出了什么问题?

您显示的第一个错误根本不是错误,而只是一些 IntelliSense 噪音,请参阅此 bug report。真正的错误是无法找到 _main 这似乎表明您正在构建控制台应用程序(请参阅 Properties\Linker\System\SubSystem 选项),因此应该通过将其设为 Windows 应用程序。

此外,虽然我没有发现您的设置有任何问题,但我仍然建议您改用 official instructions。值得注意的是,在您的情况下,它应该像以下一样简单:

If you use MSVS 2010 or later IDE for building your project, simply add wxwidgets.props property sheet to (all) your project(s) using wxWidgets. You don't need to do anything else.