GTK+-3.20.9
      
      
        
          Introduction to GTK+ 3
        
        
          The GTK+ 3 package contains
          libraries used for creating graphical user interfaces for
          applications.
        
        
          This package is known to build and work properly using an LFS-7.10
          platform.
        
        
          Package Information
        
        
        
          GTK+ 3 Dependencies
        
        
          Required
        
        
          at-spi2-atk-2.20.1, gdk-pixbuf-2.34.0,
          libepoxy-1.3.1, and Pango-1.40.1
        
        
          Recommended
        
        
          hicolor-icon-theme-0.15 (also needed
          for tests) and adwaita-icon-theme-3.20
          (default for some gtk+3 settings keys, also needed for tests)
        
        
          Recommended (Required if building GNOME)
        
        
          gobject-introspection-1.48.0
        
        
          Optional
        
        
          Colord-1.2.12, Cups-2.1.4, DocBook-utils-0.6.14, GTK-Doc-1.25, JSON-GLib-1.2.2, libxkbcommon-0.6.1, rest-0.8.0, Wayland-1.11.0, and wayland-protocols-1.7
        
        
          User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/gtk3
        
       
      
        
          Installation of GTK+ 3
        
        
          ![[Note]](../images/note.png) 
          
            Note
          
          
            GTK+ 3 will overwrite
            gtk-update-icon-cache from
            GTK+-2.24.30 if it is installed. There is
            nothing wrong about that assuming that both programs provide same
            functionality. If you wish to keep one from GTK+ 2 you can add --enable-gtk2-dependency to the configure command.
          
         
        
          Install GTK+ 3 by running the
          following commands:
        
        
sed -i "/seems to be moved/s/^/#/" build-aux/ltmain.sh &&
./configure --prefix=/usr             \
            --sysconfdir=/etc         \
            --enable-broadway-backend \
            --enable-x11-backend      \
            --disable-wayland-backend &&
make
        
          Some tests fail if /usr/share/glib-2.0/schemas/gschemas.compiled is
          not found. If you wish to run the test suite, create (or update)
          the file using the following command as the root user: glib-compile-schemas
          /usr/share/glib-2.0/schemas.
        
        
          The accessibility test (six subtests) is known to fail.
        
        
          To test the results you need a graphical session, then issue
          make -k check.
        
        
          Now, as the root user:
        
        
make install
        
          ![[Note]](../images/note.png) 
          
            Note
          
          
            If you installed the package on to your system using a
            “DESTDIR” method, an
            important file was not installed and must be copied and/or
            generated. Generate it using the following command as the
            root user:
          
          
gtk-query-immodules-3.0 --update-cache
         
        
          ![[Note]](../images/note.png) 
          
            Note
          
          
            If you installed the package to your system using a
            “DESTDIR” method,
            /usr/share/glib-2.0/schemas/gschemas.compiled
            was not updated/created. Create (or update) the file using the
            following command as the root
            user:
          
          
glib-compile-schemas /usr/share/glib-2.0/schemas
         
       
      
        
          Command Explanations
        
        
          sed -i ...
          build-aux/ltmain.sh: This sed silences several
          useless and annoying warnings generated by libtool.
        
        
          --enable-broadway-backend:
          This switch enables the HTML5 GTK backend.
        
        
          --enable-x11-backend: This
          switch enables the X11 GDK backend.
        
        
          --{disable,enable}-wayland-backend:
          This switch disables or enables the Wayland GDK backend, which is
          required for GNOME Wayland
          support. Remove it if you have not installed Wayland.
        
        
          --enable-gtk-doc: Use this parameter if
          GTK-Doc is installed and you wish
          to rebuild and install the API documentation.
        
       
      
        
          Configuring GTK+ 3
        
        
          
            Config Files
          
          
            ~/.config/gtk-3.0/settings.ini and
            /etc/gtk-3.0/settings.ini
          
         
        
          
            Configuration Information
          
          
            GTK+ 3 themes change the way a
            GTK+ 3 application looks. An
            icon theme can be used to change the icons that appear on the
            application's toolbar. If you have installed a GTK+ 3 theme (e.g. gnome-themes-standard-3.20.2),
            an icon theme (such as oxygen-icons5-5.25.0) and/or a
            font (such as DejaVu fonts), you can set
            your prefences in ~/.config/gtk-3.0/settings.ini or the default
            system wide configuration file (as the root user), in /etc/gtk-3.0/settings.ini. For the local user
            an example is:
          
          
mkdir -vp ~/.config/gtk-3.0
cat > ~/.config/gtk-3.0/settings.ini << "EOF"
[Settings]
gtk-theme-name = Adwaita
gtk-icon-theme-name = oxygen
gtk-font-name = DejaVu Sans 12
gtk-cursor-theme-size = 18
gtk-toolbar-style = GTK_TOOLBAR_BOTH_HORIZ
gtk-xft-antialias = 1
gtk-xft-hinting = 1
gtk-xft-hintstyle = hintslight
gtk-xft-rgba = rgb
gtk-cursor-theme-name = Adwaita
EOF
          
            There are many settings keys, some with default values. You can
            find them at Settings:
            GTK+ 3 Reference Manual. There are many more themes available
            at http://gnome-look.org/ and other
            places.
          
         
       
      
        
          Contents
        
        
          
            
              Installed Programs:
              broadwayd, gtk3-demo,
              gtk3-demo-application, gtk3-icon-browser, gtk3-widget-factory,
              gtk-builder-tool, gtk-encode-symbolic-svg, gtk-launch,
              gtk-query-immodules-3.0, gtk-query-settings, and
              gtk-update-icon-cache
            
            
              Installed Libraries:
              libgailutil-3.so, libgdk-3.so, and
              libgtk-3.so
            
            
              Installed Directories:
              /etc/gtk-3.0,
              /usr/include/{gail,gtk}-3.0, /usr/{lib,share}/gtk-3.0,
              /usr/share/gtk-doc/html/{gail-libgail-util,gdk,gtk}3, and
              /usr/share/themes/{Default,Emacs}/gtk-3.0
            
           
         
        
          
            Short Descriptions
          
          
            
            
              
                | 
                    broadwayd
                   | 
                    provides support for displaying GTK+ 3 applications in a web
                    browser, using HTML5 and web sockets.
                   | 
              
                | 
                    gtk3-demo
                   | 
                    is a simple program that demonstrates some of the things
                    that can be done with GTK+
                    3
                   | 
              
                | 
                    gtk3-demo-application
                   | 
                    is a simple GTK+ 3
                    application.
                   | 
              
                | 
                    gtk3-icon-browser
                   | 
                    is a utility to explore the icons in the current icon
                    theme. It shows icons in various sizes, their symbolic
                    variants where available, as well as a description of the
                    icon and its context.
                   | 
              
                | 
                    gtk3-widget-factory
                   | 
                    is a program to view GTK+
                    3 themes and widgets.
                   | 
              
                | 
                    gtk-builder-tool
                   | 
                    can perform various operations on GtkBuilder .ui files.
                   | 
              
                | 
                    gtk-encode-symbolic-svg
                   | 
                    converts symbolic svg icons into specially prepared png
                    files. GTK+ 3 can load
                    and recolor these pngs, just like original svgs, but
                    loading them is much faster.
                   | 
              
                | 
                    gtk-launch
                   | 
                    launches an application using the given name. The name
                    should match the application desktop file name, as
                    residing in /usr/share/applications, with or
                    without the '.desktop' suffix. | 
              
                | 
                    gtk-query-immodules-3.0
                   | 
                    collects information about loadable input method modules
                    for GTK+ 3 and writes it
                    to the default cache file location, or to standard
                    output.
                   | 
              
                | 
                    gtk-query-settings
                   | 
                    provides a complete listing of all settings related to
                    GTK+ 3
                   | 
              
                | 
                    gtk-update-icon-cache
                   | 
                    is an icon theme caching utility that creates mmap()able
                    cache files for icon themes.
                   | 
              
                | 
                    libgailutil-3.so | 
                    contains functions that implement the accessibility
                    interfaces defined by the GNOME Accessibility Toolkit.
                   | 
              
                | 
                    libgdk-3.so | 
                    contains functions that act as a wrapper around the
                    low-level drawing and windowing functions provided by the
                    underlying graphics system.
                   | 
              
                | 
                    libgtk-3.so | 
                    contains functions that provide an API to implement
                    graphical user interfaces.
                   | 
            
          
         
       
      
        Last updated on 2016-08-27 21:19:37 -0700