首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用MinGW的wxWidgets,"wx/wx.h:没有这样的文件或目录“

使用MinGW的wxWidgets,"wx/wx.h:没有这样的文件或目录“
EN

Stack Overflow用户
提问于 2021-02-15 22:29:49
回答 3查看 394关注 0票数 0

我是C++和wxWidgets的新手。在过去的几天里,我跟随Visual Studio学习了如何构建wxWidgets桌面应用程序(https://www.youtube.com/watch?v=FOIbK4bJKS8&t=800s)的教程。

现在,因为我不熟悉Visual Studio,所以我想在Windows命令提示符下使用Atom编辑代码并使用MinGW进行编译。

该应用程序包含以下文件:

代码语言:javascript
运行
复制
cMake.h
AnalogRead.h
cMake.cpp
AnalogRead.cpp

在Visual Studio中,您需要在项目中包含两个目录和一个库,它们如下所示:路径:

代码语言:javascript
运行
复制
/wxWidgets/include
/wxWidgets/include/msvc

库:

代码语言:javascript
运行
复制
/wxWidgets/lib/vc_lib

相对于C++代码所在的路径。

因此,我尝试创建编译行,但没有成功:

代码语言:javascript
运行
复制
c++ -I/wxWidgets/include -I/wxWidgets/include/msvc -L/wxWidgets/lib/vc_lib cMake.cpp AnalogRead.cpp -o test

但我得到以下错误:

代码语言:javascript
运行
复制
In file included from AnalogRead.cpp:1:0:
AnalogRead.h:3:19: fatal error: wx/wx.h: No such file or directory
 #include <wx/wx.h>
                   ^
compilation terminated.

问题是,我在编译中包含了该路径。wx/wx.h位于路径/wxWidgets/include/内。

有没有办法解决这个问题?提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2021-02-16 05:34:12

你不能用一个编译器编译库,然后用另一个编译器编译应用程序,这是行不通的。您应该决定要使用哪种编译器(或者尝试同时使用这两种编译器,但不能同时使用它们!)并遵循docs/msw/install.md文件中的官方构建说明。

票数 1
EN

Stack Overflow用户

发布于 2021-02-15 22:37:54

/wxWidgets/include不是相对路径。这是当前磁盘中的绝对路径。你有C:\wxWidgets\include吗?尝试不带前导/的-IwxWidgets/include-I./wxWidgets/include。如果您的应用程序源代码中有wxWidgets目录,则此路径应该有效。

票数 2
EN

Stack Overflow用户

发布于 2021-02-16 02:20:13

如果你想使用MinGW,你需要用MinGW编译器构建这个库,然后使用完全相同的命令来构建你的软件。

或者使用集成开发环境(CodeBlocks、CodeLite)。

HTH。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66209879

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档