zoukankan      html  css  js  c++  java
  • 【Gtk】feorda下gtk安装详解

    feorda下gtk安装详解
     

    1.yum在线安装gtk

       1)pkg-config -version查看pkg-config的版本(本机测试是0.25)
       2)安装必要组建:(在root权限下)
    yum install gtk2 gtk2-devel gtk2-devel-docs
       3)可能还需要组建(可选,不行再装):
    yum install gnome-devel gnome-devel-docs
       4)有些linux版本已经自带了gtk包,需要安装
    yum install gtk2-devel
       5)安装成功后通过以下查看gtk版本(本机测试是2.24.13)
    pkg-config --modversion gtk+-2.0
       6)在线安装的好处就是不需要自己处理依赖关系,但是对于学习来说,未必是一件好事。


    2.源码安装gtk
       1)源码安装主要分为解压缩/配置/构建/安装等步骤
       2)主要依赖包有glib/atk/cairo/pango/gtk+
       3)根据软件包之间的相互依赖关系,需要按照glib/atk/cairo/pango/gtk+的顺序安装
       4)从上面的在线安装gtk可以看到gtk的依赖关系
    解决依赖关系
    --> 执行事务检查
    ---> 软件包 gtk2-devel.i686.0.2.24.13-1.fc17 将被 安装
    --> 处理依赖关系 pango-devel >= 1.20.0-1,它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要
    --> 处理依赖关系 cairo-devel >= 1.6.0-1,它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要
    --> 处理依赖关系 atk-devel >= 1.29.4-2,它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要
    --> 处理依赖关系 pkgconfig(pangoft2),它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要
    --> 处理依赖关系 pkgconfig(pangocairo),它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要
    --> 处理依赖关系 pkgconfig(pango),它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要
    --> 处理依赖关系 pkgconfig(gdk-pixbuf-2.0),它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要
    --> 处理依赖关系 pkgconfig(cairo),它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要
    --> 处理依赖关系 pkgconfig(atk),它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要
    --> 处理依赖关系 gdk-pixbuf2-devel,它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要
    --> 处理依赖关系 automake,它被软件包 gtk2-devel-2.24.13-1.fc17.i686 需要

     

    3.gtk测试
       1)首先编写了一个简单的gtk程序作为测试
       2)源代码
    //gtk_test.c
    #include <gtk/gtk.h>
    int main( int   argc, char *argv[] )
    {
    GtkWidget *window;
    gtk_init(&argc, &argv);
    window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    g_signal_connect(G_OBJECT(window),"delete_event",
    G_CALLBACK(gtk_main_quit),NULL);
    gtk_window_set_title(GTK_WINDOW(window),"Hello World!");
    gtk_widget_show(window);
    gtk_main();
    return 0;
    }
     
     


    3)编译排错
       编译命令:
    gcc gtk_test.c -o gtk_test.out 'pkg-config --cflags --libs gtk+-2.0'

       gcc: 错误:
    pkg-config --cflags --libs gtk+-2.0:没有那个文件或目录


    4)解决方案
       去官网上发现命令如下:
    gcc base.c -o base `pkg-config --cflags --libs gtk+-2.0`
       发现不同的是,我用单引号' '包含命令,而官网是用倒引号 ` `包含命令,问题就在这,把''换成``后,编译成功。

    5)执行效果




    6)生成gtk应用

       在图中可以看见,一个简单的hello world标题的窗口就生成了

    本文出自 “成鹏致远” 博客,请务必保留此出处http://infohacker.blog.51cto.com/6751239/1155127

  • 相关阅读:
    5. Longest Palindromic Substring
    56. Merge Intervals
    386. Lexicographical Numbers
    42. Trapping Rain Water
    *[topcoder]BracketExpressions
    [codility]CountDiv
    *[codility]MinAvgTwoSlice
    *[codility]MissingInteger
    [mock]7月25日
    网络广告术语
  • 原文地址:https://www.cnblogs.com/lcw/p/3159507.html
Copyright © 2011-2022 走看看