[zhuan] linux 下 wxWidgets 安装,编译

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

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

X11的安装(若是选择使用wxX11):shell

apt-get install libx11-devthis

GTK的安装(若是选择使用wxGTK):spa

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

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

tar -zxf wxGTK-2.8.11.tar.gz开发

cd wxGTK-2.8.11get

./configure编译器

makeit

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这里就不写了,仍是相信你懂得。

相关文章
相关标签/搜索