wx / app.h:没有带有cygwin64的souch文件或目录

时间:2017-09-13 18:18:50

标签: c++ makefile cygwin wxwidgets

几乎不可能找到陨石的编译版本。当你找到一个时,它就不起作用了。

尝试从这个github fork自己编译陨石:https://github.com/cbielow/meteorite当我尝试在Cygwin64中执行“make”命令时遇到以下错误消息:

In file included from src/MeteoriteApp.cpp:18:0:
src/MeteoriteApp.h:13:20: fatal error : wx/app.h: no souch file or directory with cygwin64

其中一个先决条件是我使用Windows安装程序安装的wxWidgets:https://www.wxwidgets.org/downloads/

我非常擅长c ++与之相关的一切。我能做错什么?陨石来源中是否有我应该改变的内容?

C:\wxWidgets-3.1.0和此处(C:\wxWidgets-3.1.0\include\wx)下安装的wxWidgets我找到了一个wx文件夹,其中包含编译器告诉我的app.h文件。我尝试将这个wx文件夹复制到源周围的不同位置,在源代码中我尝试将include更改为< ../ wx / app.h>。但这一切都没有帮助。

除了我在这里提供的参考文献之外还有什么可以帮助你帮助我吗?

4 个答案:

答案 0 :(得分:0)

您必须在项目中包含/编辑wxWidgets头文件的路径。试试这个: 点击此电脑转到您的环境变量 - >属性 - >高级系统设置 - >环境变量。在“系统”变量中,单击“新建”并将“变量名称”设置为:在makefile中使用的 WXCONFIG 。将变量值设置为wxWidgets文件夹路径。

答案 1 :(得分:0)

搜索您可以使用的cygwin软件包上的文件 https://cygwin.com/packages/

寻找wx/app.h

https://cygwin.com/cgi-bin2/package-cat.cgi?file=x86_64%2Flibwx_baseu3.0-devel%2Flibwx_baseu3.0-devel-3.0.3-1&grep=wx%2Fapp.h

会告诉您它已包含在libwx_baseu3.0-devel wxWidgets C++ application framework

包中

答案 2 :(得分:0)

如果查看wxWidgets示例,您会发现项目设置为正确包含wxWidgets。有时重要的是在custiom位置创建一个新项目,因此必须正确设置include和library目录。

这是wxWidgets的一个例子:

// additional include directories
.\..\..\lib\vc_lib\mswud
.\..\..\include
.
.\..\..\samples

要在桌面上设置项目,例如:

D:\wxWidgets-3.1.0\lib\vc_lib\mswud
D:\wxWidgets-3.1.0\include
D:\wxWidgets-3.1.0
D:\wxWidgets-3.1.0\samples

上面你可以看到我的wxWidgets已安装在驱动器D上,所以如果我想在我的项目中使用它,我将目录设置为如上所述。

  • 对其他库也做同样的事情:

    D:\wxWidgets-3.1.0\lib\vc_lib
    

答案 3 :(得分:0)

Cygwin(应该是)就像Unix一样,所以你应该遵循Unix指令来构建wxWidgets本身和使用它的应用程序,例如,参见分发版中的docs/gtk/install.txt

请注意,您需要先构建wxWidgets,然后使用wx-config --cxxflags构建应用程序,如上文所述。

另请注意,您可能已选择使用Cygwin作为平台构建应用程序的最少简单方法。使用MinGW + MSys会更简单。