Difference between revisions of "Gtk2"

From CBLFS
Jump to navigationJump to search
(Redundant dep. - ATK requires glib-2)
(Contents: removed gdk_pixbuf binaries and libraries from the list because they are now located in the gdk-pixbuf package.)
 
(16 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 
{| style="text-align: left; background-color: AliceBlue;"
 
{| style="text-align: left; background-color: AliceBlue;"
|-
 
!Download Source:
 
| ftp://ftp.gtk.org/pub/gtk/{{Gtk2-Version2}}/gtk+-{{Gtk2-Version}}.tar.bz2
 
 
|-
 
|-
 
!Download Source:
 
!Download Source:
Line 19: Line 16:
 
* [[Pango]]
 
* [[Pango]]
 
* [[ATK]]
 
* [[ATK]]
* [[LibTIFF]]
+
* [[Gdk-Pixbuf]]
 
 
=== Recommended ===
 
* [[libjpeg]]
 
* [[libpng]]
 
  
 
=== Optional ===
 
=== Optional ===
Line 33: Line 26:
  
 
{|style="text-align: left"
 
{|style="text-align: left"
 +
|-
 +
|<i>--disable-cups</i>: disable [[CUPS]] print backend.
 
|-
 
|-
 
|<i>--enable-gtk-doc</i> use [[Gtk-Doc]] to build documentation.
 
|<i>--enable-gtk-doc</i> use [[Gtk-Doc]] to build documentation.
 +
|-
 +
|<i>--enable-gtk-doc-html</i>: use [[Gtk-Doc]] to build documentation in html format.
 +
|-
 +
|<i>--enable-gtk-doc-pdf</i>: use [[Gtk-Doc]] to build documentation in pdf format.
 
|-
 
|-
 
|<i>--with-xinput=yes</i> support XInput, useful for graphic tablets that make use of it. Without it, tools like GIMP will not be able to use the advanced features of the tablet, i.e. pressure, tilt, rotation.
 
|<i>--with-xinput=yes</i> support XInput, useful for graphic tablets that make use of it. Without it, tools like GIMP will not be able to use the advanced features of the tablet, i.e. pressure, tilt, rotation.
Line 51: Line 50:
 
  install -v -m755 -d /usr/share/doc/gtk+-{{Gtk2-Version}}/{faq,tutorial} &&
 
  install -v -m755 -d /usr/share/doc/gtk+-{{Gtk2-Version}}/{faq,tutorial} &&
 
  cp -v -R docs/faq/html/* /usr/share/doc/gtk+-{{Gtk2-Version}}/faq &&
 
  cp -v -R docs/faq/html/* /usr/share/doc/gtk+-{{Gtk2-Version}}/faq &&
  cp -v -R docs/tutorial/html/* /usr/share/doc/gtk+-{{Gtk2-Version}}/tutorial &&
+
  cp -v -R docs/tutorial/html/* /usr/share/doc/gtk+-{{Gtk2-Version}}/tutorial
sed -i 's/1 << 5,/1 << 5/' /usr/include/gtk-2.0/gtk/gtkcalendar.h
 
 
 
  
 
== Multilib ==
 
== Multilib ==
Line 62: Line 59:
  
 
  patch -Np1 -i ../gtk+-{{Gtk2-Version}}-multilib-1.patch &&
 
  patch -Np1 -i ../gtk+-{{Gtk2-Version}}-multilib-1.patch &&
  sed -i "s/BUILDENV/32/" gdk-pixbuf/gdk-pixbuf-io.c \
+
  sed -i "s/BUILDENV/32/" \
    gdk-pixbuf/Makefile.am gdk-pixbuf/Makefile.in \
 
 
     modules/input/Makefile.am modules/input/Makefile.in \
 
     modules/input/Makefile.am modules/input/Makefile.in \
 
     gtk/gtkrc.c
 
     gtk/gtkrc.c
Line 77: Line 73:
  
 
  make install &&
 
  make install &&
mv -v /usr/bin/gdk-pixbuf-query-loaders{,-32} &&
+
  mv -v /usr/bin/gtk-query-immodules-2.0{,-32}
  mv -v /usr/bin/gtk-query-immodules-2.0{,-32} &&
 
sed -i 's/1 << 5,/1 << 5/' /usr/include/gtk-2.0/gtk/gtkcalendar.h
 
  
 
=== N32 ===
 
=== N32 ===
Line 86: Line 80:
  
 
  patch -Np1 -i ../gtk+-{{Gtk2-Version}}-multilib-1.patch &&
 
  patch -Np1 -i ../gtk+-{{Gtk2-Version}}-multilib-1.patch &&
  sed -i "s/BUILDENV/n32/" gdk-pixbuf/gdk-pixbuf-io.c \
+
  sed -i "s/BUILDENV/n32/" \
    gdk-pixbuf/Makefile.am gdk-pixbuf/Makefile.in \
 
 
     modules/input/Makefile.am modules/input/Makefile.in \
 
     modules/input/Makefile.am modules/input/Makefile.in \
 
     gtk/gtkrc.c
 
     gtk/gtkrc.c
Line 102: Line 95:
  
 
  make install &&
 
  make install &&
mv -v /usr/bin/gdk-pixbuf-query-loaders{,-n32} &&
+
  mv -v /usr/bin/gtk-query-immodules-2.0{,-n32}
  mv -v /usr/bin/gtk-query-immodules-2.0{,-n32} &&
 
sed -i 's/1 << 5,/1 << 5/' /usr/include/gtk-2.0/gtk/gtkcalendar.h
 
  
 
=== 64Bit ===
 
=== 64Bit ===
Line 111: Line 102:
  
 
  patch -Np1 -i ../gtk+-{{Gtk2-Version}}-multilib-1.patch &&
 
  patch -Np1 -i ../gtk+-{{Gtk2-Version}}-multilib-1.patch &&
  sed -i "s/BUILDENV/64/" gdk-pixbuf/gdk-pixbuf-io.c \
+
  sed -i "s/BUILDENV/64/" \
    gdk-pixbuf/Makefile.am gdk-pixbuf/Makefile.in \
 
 
     modules/input/Makefile.am modules/input/Makefile.in \
 
     modules/input/Makefile.am modules/input/Makefile.in \
 
     gtk/gtkrc.c
 
     gtk/gtkrc.c
Line 127: Line 117:
  
 
  make install &&
 
  make install &&
mv -v /usr/bin/gdk-pixbuf-query-loaders{,-64} &&
 
 
  mv -v /usr/bin/gtk-query-immodules-2.0{,-64} &&
 
  mv -v /usr/bin/gtk-query-immodules-2.0{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/gdk-pixbuf-query-loaders &&
 
 
  ln -sfv multiarch_wrapper /usr/bin/gtk-query-immodules-2.0 &&
 
  ln -sfv multiarch_wrapper /usr/bin/gtk-query-immodules-2.0 &&
 
  install -v -m755 -d /usr/share/doc/gtk+-{{Gtk2-Version}}/{faq,tutorial} &&
 
  install -v -m755 -d /usr/share/doc/gtk+-{{Gtk2-Version}}/{faq,tutorial} &&
 
  cp -v -R docs/faq/html/* /usr/share/doc/gtk+-{{Gtk2-Version}}/faq &&
 
  cp -v -R docs/faq/html/* /usr/share/doc/gtk+-{{Gtk2-Version}}/faq &&
  cp -v -R docs/tutorial/html/* /usr/share/doc/gtk+-{{Gtk2-Version}}/tutorial &&
+
  cp -v -R docs/tutorial/html/* /usr/share/doc/gtk+-{{Gtk2-Version}}/tutorial
sed -i 's/1 << 5,/1 << 5/' /usr/include/gtk-2.0/gtk/gtkcalendar.h
 
  
 
== Contents ==
 
== Contents ==
Line 144: Line 131:
 
|-valign="top"
 
|-valign="top"
 
!Installed Programs:
 
!Installed Programs:
|gdk-pixbuf-csource, gdk-pixbuf-query-loaders, gtk-query-immodules-2.0, gtk-update-icon-cache, gtk-demo
+
|gtk-query-immodules-2.0, gtk-update-icon-cache, gtk-demo
 
|-valign="top"
 
|-valign="top"
 
!Installed Libraries:
 
!Installed Libraries:
|libgdk_pixbuf-2.0.{so,la}, libpixbufloader-{png,jpeg,gif,ico,ani,ras,xpm,tiff,pnm,bmp,wbmp,xbm,tga,pcx}.{so,la}, libgdk-x11-2.0.{so,la}, libgtk-x11-2.0.{so,la}, im-xim.{so,la}, im-am-et.{so,la}, im-cedilla.{so,la}, im-cyrillic-translit.{so,la}, im-inuktitut.{so,la}, im-ipa.{so,la}, im-thai-broken.{so,la}, im-ti-er.{so,la}, im-ti-et.{so,la}, im-viqr.{so,la}, libpixmap.{so,la}, libprintbackend-file.{so,la}, libprintbackend-lpr.{so,la}, libgdk_pixbuf_xlib-2.0.{so,la}
+
|libgdk-x11-2.0.{so,la}, libgtk-x11-2.0.{so,la}, im-xim.{so,la}, im-am-et.{so,la}, im-cedilla.{so,la}, im-cyrillic-translit.{so,la}, im-inuktitut.{so,la}, im-ipa.{so,la}, im-thai-broken.{so,la}, im-ti-er.{so,la}, im-ti-et.{so,la}, im-viqr.{so,la}, libpixmap.{so,la}, libprintbackend-file.{so,la}, libprintbackend-lpr.{so,la}, libgdk_pixbuf_xlib-2.0.{so,la}
 
|}
 
|}
 +
 +
[[Category:X Libs]]

Latest revision as of 07:55, 25 April 2011

Download Source: http://ftp.gnome.org/pub/gnome/sources/gtk+/2.23/gtk+-2.23.2.tar.bz2
Required Patch (For Multilib): http://svn.cross-lfs.org/svn/repos/patches/gtk+/gtk+-2.23.2-multilib-1.patch

Introduction to Gtk2

The Gtk2 package contains version 2 of the GTK+ libraries. GTK+ is a multi-platform toolkit for creating graphical user interfaces. It is the GUI toolkit that Gnome uses. The current version of Gnome - Gnome 2 - is based on Gtk2.

Project Homepage: http://www.gtk.org/

Dependencies

Required

Optional

Configuration Information

--disable-cups: disable CUPS print backend.
--enable-gtk-doc use Gtk-Doc to build documentation.
--enable-gtk-doc-html: use Gtk-Doc to build documentation in html format.
--enable-gtk-doc-pdf: use Gtk-Doc to build documentation in pdf format.
--with-xinput=yes support XInput, useful for graphic tablets that make use of it. Without it, tools like GIMP will not be able to use the advanced features of the tablet, i.e. pressure, tilt, rotation.

Non-Multilib

Compile the package:

./configure --prefix=/usr --sysconfdir=/etc &&
make

Install the package

make install &&
install -v -m755 -d /usr/share/doc/gtk+-2.23.2/{faq,tutorial} &&
cp -v -R docs/faq/html/* /usr/share/doc/gtk+-2.23.2/faq &&
cp -v -R docs/tutorial/html/* /usr/share/doc/gtk+-2.23.2/tutorial

Multilib

32Bit

The following commands make Gtk put it's configuration information in /etc/gtk-2.0-32:

patch -Np1 -i ../gtk+-2.23.2-multilib-1.patch &&
sed -i "s/BUILDENV/32/" \
    modules/input/Makefile.am modules/input/Makefile.in \
    gtk/gtkrc.c

Compile the package:

CC="gcc ${BUILD32}" USE_ARCH=32 \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure --prefix=/usr --sysconfdir=/etc &&
make

Install the package

make install &&
mv -v /usr/bin/gtk-query-immodules-2.0{,-32}

N32

The following commands make Gtk put it's configuration information in /etc/gtk-2.0-n32:

patch -Np1 -i ../gtk+-2.23.2-multilib-1.patch &&
sed -i "s/BUILDENV/n32/" \
    modules/input/Makefile.am modules/input/Makefile.in \
    gtk/gtkrc.c

Compile the package:

CC="gcc ${BUILDN32}" USE_ARCH=n32 \
PKG_CONFIG_PATH="${PKG_CONFIG_PATHN32}" \
./configure --prefix=/usr --libdir=/usr/lib32 \
    --sysconfdir=/etc &&
make

Install the package

make install &&
mv -v /usr/bin/gtk-query-immodules-2.0{,-n32}

64Bit

The following commands make Gtk put it's configuration information in /etc/gtk-2.0-64:

patch -Np1 -i ../gtk+-2.23.2-multilib-1.patch &&
sed -i "s/BUILDENV/64/" \
    modules/input/Makefile.am modules/input/Makefile.in \
    gtk/gtkrc.c

Compile the package:

CC="gcc ${BUILD64}" USE_ARCH=64 \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure --prefix=/usr --libdir=/usr/lib64 \
    --sysconfdir=/etc &&
make

Install the package

make install &&
mv -v /usr/bin/gtk-query-immodules-2.0{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/gtk-query-immodules-2.0 &&
install -v -m755 -d /usr/share/doc/gtk+-2.23.2/{faq,tutorial} &&
cp -v -R docs/faq/html/* /usr/share/doc/gtk+-2.23.2/faq &&
cp -v -R docs/tutorial/html/* /usr/share/doc/gtk+-2.23.2/tutorial

Contents

Installed Directories: /usr/lib/gtk-2.0/2.23.0/loaders, /usr/lib/gtk-2.0/2.23.0/immodules, /usr/lib64/gtk-2.0/2.23.0/printbackends, /usr/include/gtk-2.0/{gdk-pixbuf,gdk,gtk}, /usr/include/gtk-unix-print-2.0, /usr/include/gtk-unix-print-2.0/gtk, /usr/include/gtk-2.0/gdk-pixbuf-xlib, /usr/share/themes/Raleigh/gtk-2.0, /usr/share/themes/Default/gtk-2.0-key, /usr/share/themes/Emacs/gtk-2.0-key, /usr/share/gtk-2.0/demo
Installed Programs: gtk-query-immodules-2.0, gtk-update-icon-cache, gtk-demo
Installed Libraries: libgdk-x11-2.0.{so,la}, libgtk-x11-2.0.{so,la}, im-xim.{so,la}, im-am-et.{so,la}, im-cedilla.{so,la}, im-cyrillic-translit.{so,la}, im-inuktitut.{so,la}, im-ipa.{so,la}, im-thai-broken.{so,la}, im-ti-er.{so,la}, im-ti-et.{so,la}, im-viqr.{so,la}, libpixmap.{so,la}, libprintbackend-file.{so,la}, libprintbackend-lpr.{so,la}, libgdk_pixbuf_xlib-2.0.{so,la}