您使用“yum install wxGTK-devel”安装了wxWidgets(我正在使用fedora 20)。 我正在尝试编译以下示例文件:
#include <wx/wx.h>
int main(void)
{
return 0;
}
使用这一行:
g++ -I/usr/include/wx-2.8 pru.cpp
但是我知道wx / setup.h不存在。我找了它,但没找到它。
问题是在wx / platform.h中有以下句子:
#include "wx/setup.h"
我不知道这是如何工作的,或者我怎样才能使它工作。 如果你知道如何解决这个问题,或者至少提示一下,我会帮助你解决问题。
答案 0 :(得分:2)
链接和编译
通常,当你包含wxWidgets时,你会说“wx / wx.h”但是wxwidgets位于wx-2.8 / wx的子目录中,所以我们要做的是创建一个指向wx-2.8 / wx的链接。
sudo ln -sv wx-2.8/wx wx
就是这样,现在你的文件应该正确编译。
编译文件以包含wxWidgets库时,将其添加到gcc命令的末尾:
`wx-config --cxxflags` `wx-config --libs`
例如:
g++ your_code.cpp `wx-config --cxxflags` `wx-config --libs`
答案 1 :(得分:1)
您必须使用wx-config
来获取wxWidgets程序的编译标志,如其他答案中所述。 wxGTK-devel包确实包含它,以及setup.h
文件,至少根据此listing of its contents。
答案 2 :(得分:0)
wxWidgets根目录中有setup.h.in
,它是setup.h
的模板。您可以将其复制并重命名为setup.h
看来,与yum的设置不同,请参阅prevent direct access帖子。有人建议执行/usr/bin/wx-config
或/usr/bin/wx-config --cxxflags
可以找到wx-config的文档this