在Ubuntu 8.10中配置的C,C++编程环境测试(6)

如果要生成C++的图形界面,得安装gtkmm,或者QT
配备类似于MFC的环境
一般有两种选择:gtkmm版本,或者是qt版本的图形类库
这里讲述的是gtkmm版本。
在添加删除程序里面 搜索gtkmm安装最新版本把dev包也装上。搜索gnomemm把libgnomemm也装上,包含dev包。同样的还有libglademm。一定都要包含dev包。
这时你的Ubuntu c++开发环境就配置好了,使用:pkg-config –cflags gtkmm-2.4; pkg-config –cflags libglademm-2.4,验证是否安装好了。提示缺少什么就安装什么。


要命的是,在我这个Ubuntu中的添加删除中压根儿就搜索不到gtkmm !!!!
从网上下载的源码包:gtkmm-2.8.3.tar.bz2
解压
启动终端,转到解压的目录下:执行终端命令:
# ./configure
# make
# make install
(注明,看到 # 号了吗?这表明目前是在 root 用户下,权限最高,如果是在一般用户下,即 $ 之下,则需要加上 sudo ,暂时借用一下管理员最高权限,在执行这个命令的时候,呵呵,否则会出错的啦。即 sudo make install )
实施源代码安装方式。OK
在Anjuta中可以看到它了GTKmm  !


新建一个工程,选择GTKmm

在Ubuntu 8.10中配置的C,C++编程环境测试


在选项中只保留:Add share libarry support 为是,其它为否。
自动生成一个窗口程序的所有相关代码,生成的时间有点长。
主程序代码:
/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
/*
* main.cc
* Copyright (C) 周雄飞 2008 <pack39@qq.com>
*
* main.cc is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* main.cc is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program.  If not, see <>.
*/

#include <libglademm/xml.h>
#include <gtkmm.h>
#include <iostream>

/* For testing propose use the local (not installed) glade file */
/* #define GLADE_FILE PACKAGE_DATA_DIR"/gtk_foobar/glade/gtk_foobar.glade" */
#define GLADE_FILE "gtk_foobar.glade"
  
int
main (int argc, char *argv[])
{
        Gtk::Main kit(argc, argv);
       
        //Load the Glade file and instiate its widgets:
        Glib::RefPtr<Gnome::Glade::Xml> refXml;
        try
        {
                refXml = Gnome::Glade::Xml::create(GLADE_FILE);
        }
        catch(const Gnome::Glade::XmlError& ex)
    {
                std::cerr << ex.what() << std::endl;
                return 1;
        }
        Gtk::Window* main_win = 0;
        refXml->get_widget("main_window", main_win);
        if (main_win)
        {
                kit.run(*main_win);
        }
        return 0;
}
shift+F11 生成工程,按快捷键F3  或者到程序目录下可以看到这个程序了,点击它,就能运行。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzyzxy.html