【问题标题】:wxWidgets - missing wx/setup.hwxWidgets - 缺少 wx/setup.h
【发布时间】:2015-08-08 08:51:58
【问题描述】:

您好,使用“yum install wxGTK-devel”安装了 wxWidgets(我使用的是 fedora 20)。 我正在尝试编译以下示例文件:

test.cpp:

#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"

我不知道这应该如何工作或如何使其工作。 如果您知道如何解决此问题或至少提供提示,我会感谢您的帮助。

【问题讨论】:

    标签: c++ wxwidgets fedora


    【解决方案1】:

    wxWidgets documentation关注这个:

    链接和编译

    通常,当您包含 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`
    

    【讨论】:

      【解决方案2】:

      您必须使用 wx-config 来获取 wxWidgets 程序的编译标志,如另一个答案中已经提到的。 wxGTK-devel 包确实包含它,以及setup.h 文件,至少根据这个listing of its contents

      【讨论】:

        【解决方案3】:

        wxWidgets 根目录下有setup.h.in,它是setup.h 的模板。您可以复制并重命名为setup.h

        使用 yum 的设置似乎有所不同,请参阅 this 帖子。有人建议执行/usr/bin/wx-config/usr/bin/wx-config --cxxflags

        wx-config 的文档可以在here找到

        【讨论】:

        • 实际上没有这个名字。我尝试自己编译 wxWidgets,但我遇到了同样的问题
        • 模板的正确文件名是setup.h.in,检查从wxWidgets网站下载的wxGTK源文件,它在那里..
        • 您不能简单地创建一个任意的setup.h 并期望它与您已有的预构建版本一起使用。这个答案的wx-config 部分是正确的,但setup.h.in 一个不是。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-08-03
        • 1970-01-01
        • 1970-01-01
        • 2010-09-13
        • 2014-02-08
        • 2017-06-07
        • 2012-04-03
        相关资源
        最近更新 更多