无法在窗口上编译 WxWidget 项目

can't compile WxWidget project on windows

本文关键字:编译 WxWidget 项目 窗口      更新时间:2023-10-16

任何包含库 WxWidgets 的代码在库 "setup.h" 中总是有一个错误,你能向我解释一下为什么吗?

in file included for c, 196
from c, 21
from c, 13
#error "This file should only be included when using Microsoft Visual C++"
wxCONCAT5(../../../lib/,wxCONCAT3(vc,, _lib), /,msw, /wx/setup.h): No such file or directory
293,
21,
13,
#error "wxUSE_DYNLIB_CLASS must be defined."
#error "wxUSE_EXCEPTIONS must be defined."
#error "wxUSE_FILESYSTEM must be defined."
#error "wxUSE_FS_ARCHIVE must be defined."
#error "wxUSE_DYNAMIC_LOADER must be defined."
#error "wxUSE_LOG must be defined."
#error "wxUSE_LONGLONG must be defined."
#error "wxUSE_MIMETYPE must be defined."
#error "wxUSE_PRINTF_POS_PARAMS must be defined."
#error "wxUSE_PROTOCOL must be defined."
#error "wxUSE_REGEX must be defined."
#error "wxUSE_STDPATHS must be defined."
#error "wxUSE_XML must be defined."
#error "wxUSE_SOCKETS must be defined."
#error "wxUSE_STREAMS must be defined."
#error "wxUSE_STOPWATCH must be defined."
#error "wxUSE_TEXTBUFFER must be defined."
#error "wxUSE_TEXTFILE must be defined."
#error "wxUSE_URL must be defined."
#error "wxUSE_VARIANT must be defined."
#error "wxUSE_ABOUTDLG must be defined."
#error "wxUSE_ACCEL must be defined."
#error "wxUSE_ANIMATIONCTRL must be defined."
#error "wxUSE_BITMAPCOMBOBOX must be defined."
#error "wxUSE_BMPBUTTON must be defined."
#error "wxUSE_BUTTON must be defined."
#error "wxUSE_CALENDARCTRL must be defined."
#error "wxMessageBox is always needed"
OnAbout(wxCommandEvent&)':
'wxMessageBox' was not declared in this scope

我有带有 Falcon C++ 的 WxWidgets 2.8.12。

您的IDE使用GCC(可能是MINGW工具链)作为编译器,而您拥有的WxWidgets库是为Visual Studio编译器构建的。按照他们的wiki上关于"使用MinGW编译wxWidgets"的说明创建与GCC C++工具链兼容的版本。或者,您可以使用Visual Studio Express版本之一作为IDE。

您的包含路径中以某种方式$(WXWIN)includemsvc。当然,此路径是特定于 MSVC 的,在使用 g++ 时根本不应使用,就像错误消息告诉您的那样。

正如另一个回复所说,你最好的选择是按照维基中的说明进行操作。但在任何情况下,编译器选项中都不应包含上述路径。