无法在Visual Studio 2017中配置wxwidgets。
遵循这些步骤。
wx_vc15.sln
中运行build
-> msw
。Debub
成功构建DLL Debug
,DLL Release
,Relese
,x86
。在Microsoft Visual Studio 17 V15.9.20
中,创建了一个空项目。添加了simple wxWidgets程序。
在project properties
中进行了以下更改-在带有平台All Configurations
的Win32
中,将Configuration Properties
-> Character Set
设置为Use Unicode Character Set
C/C++
-> Additional Include Directories
-> $(WXWIN)\include\msvc;$(WXWIN)\include;
C/C++
-> Preprocessor
-> Preprocessor Defenitions
-> __WXMSW__;WXUSINGDLL;_DEBUG
Linker
-> Additional Library Directories
-> $(WXWIN)\lib\vc_dll
在Environment Variables
中进行了这些更改
User variables
中WXWIN
,并将其值设置为C:\Users\varun\Desktop\workspace\wxWidgets-3.1.3
。C:\Users\varun\Desktop\workspace\wxWidgets-3.1.3\lib\vc_dll
。在项目属性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\10\Include\10.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。特别是在您的情况下,它应该很简单:
如果使用MSVS 2010或更高版本的IDE来构建项目,只需使用wxWidgets将
wxwidgets.props
属性表添加到(所有)项目中。您无需执行其他任何操作。