zoukankan      html  css  js  c++  java
  • [zhuan] linux 下 wxWidgets 安装,编译

     
    http://blog.csdn.net/yuzhenxiong0823/article/details/7727133
    wxWidgets在Linux下有wxGTK和wxX11供使用,各需要GTK和X11开发环境; 

    wxWidgets在linux下有wxGTK和wxX11供使用,但是分别需要配置GTK和X11开发环境,开发环境配置如下:

    X11的安装(如果选择使用wxX11):

    apt-get install libx11-dev

    GTK的安装(如果选择使用wxGTK):

    apt-get install gnome-core-devel #这将安装 libgtk2.0-dev libglib2.0-dev 等开发相关的库文件

    www.wxwidgets.org里下载wxGTK或wxX11,这就是wxWidgets的库,下面是编译方法,以wxGTK为例:

    tar -zxf wxGTK-2.8.11.tar.gz

    cd wxGTK-2.8.11

    ./configure

    make

    sudo make install

    sudo ldconfig

    输入wx-config --cxxflags,检查wxGTK是否正确配置安装

    如果能看到wx-config头文件的路径就说明已经配置成功了。

     

    下面我举个例子,说明下如何使用wx-config进行wxGTK程序的编译

    hello.cpp 内容如下:

    #include "wx/wx.h"

    class HelloWorldApp : public wxApp
    {
    public:
        virtual bool OnInit();
    private:
        wxButton *button;
    };


    IMPLEMENT_APP(HelloWorldApp)

    /* this is executed upon startup, like 'main()' in non-wxWidgets programs */

    bool HelloWorldApp::OnInit()
    {
        wxFrame *frame = new wxFrame((wxFrame*) NULL, -1, _T("Hello wxWidgets World"));
        frame->CreateStatusBar();
        frame->SetStatusText(_T("Hello World"));
        button = new wxButton((wxFrame *)frame, -2, _T("123"));
        frame->Show(TRUE);
        SetTopWindow(frame);

        return true;
    }

    执行编译:
    $(wx-config  --cxx)  hello.cpp  $(wx-config  --libs  --cxxflags)  -o  hello
    执行程序:
    ./hello

    就可以看到wxGTK的窗口了,感觉还可以的,我就不贴图了,更关键的是,有了wx-config,makefile编写也简单了很多,我们可以在makefile通过执行shell来获取包含文件和库文件信息,如我们可以在makefile的开头这样写

    cxx:=$(shell wx-config --cxx)

    libs:=$(shell wx-config --libs)

    cxxflags:=$(shell wx-config --cxxflags)

    在后面可以直接使用cxx作为编译器,用libs作为连接库,用cxxflags作为包含库使用了,不过用的时候别忘记使用$(cxx)、$(libs) 和$(cxxflags),这样makefile的编写也简单了很多。具体的makefile这里就不写了,还是相信你懂得。

  • 相关阅读:
    利用相关的Aware接口
    java 值传递和引用传递。
    权限控制框架Spring Security 和Shiro 的总结
    优秀代码养成
    Servlet 基础知识
    leetcode 501. Find Mode in Binary Search Tree
    leetcode 530. Minimum Absolute Difference in BST
    leetcode 543. Diameter of Binary Tree
    leetcode 551. Student Attendance Record I
    leetcode 563. Binary Tree Tilt
  • 原文地址:https://www.cnblogs.com/xuyuan77/p/5785044.html
Copyright © 2011-2022 走看看