# install Gtk+ (libgtk) under FreeBSD



## ccc (Feb 14, 2011)

Hi

I have FreeBSD 7.3 Release and cannot find *Gtk+ *(libgtk) in the ports.


----------



## SirDice (Feb 14, 2011)

Handbook: Chapter 4 Installing Applications: Packages and Ports

Happy reading.


----------



## ccc (Feb 14, 2011)

SirDice said:
			
		

> Handbook: Chapter 4 Installing Applications: Packages and Ports
> 
> Happy reading.



I know howto install, I cannot find Gtk+ (libgtk) in the ports.


----------



## wblock@ (Feb 14, 2011)

ccc said:
			
		

> I know howto install, I cannot find Gtk+ (libgtk) in the ports.



The appropriate version of GTK should be automatically installed as a dependency of the port that needs it.  If you're programming, see x11-toolkits/gtk12 and x11-toolkits/gtk20.


----------



## ccc (Feb 14, 2011)

I try to install x11-toolkits/gtk20 and get this problem:
	
	



```
# cd /usr/ports/x11-toolkits/gtk20
# make install clean

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables BASE_DEPENDENCIES_CFLAGS
and BASE_DEPENDENCIES_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
===>  Script "configure" failed unexpectedly.
Please run the gnomelogalyzer, available from
"http://www.freebsd.org/gnome/gnomelogalyzer.sh", which will diagnose the
problem and suggest a solution. If - and only if - the gnomelogalyzer cannot
solve the problem, report the build failure to the FreeBSD GNOME team at
gnome@FreeBSD.org, and attach (a)
"/usr/ports/x11-toolkits/gtk20/work/gtk+-2.22.1/config.log", (b) the output
of the failed make command, and (c) the gnomelogalyzer output. Also, it might
be a good idea to provide an overview of all packages installed on your system
(i.e. an `ls /var/db/pkg`). Put your attachment up on any website,
copy-and-paste into http://freebsd-gnome.pastebin.com, or use send-pr(1) with
the attachment. Try to avoid sending any attachments to the mailing list
(gnome@FreeBSD.org), because attachments sent to FreeBSD mailing lists are
usually discarded by the mailing list software.
*** Error code 1
[B][color="Red"]
Stop in /usr/ports/x11-toolkits/gtk20.[/color][/B]
```

BTW Howto set the environment variables BASE_DEPENDENCIES_CFLAGS and BASE_DEPENDENCIES_LIBS to avoid the need to call pkg-config?


----------



## caesius (Feb 14, 2011)

ccc said:
			
		

> I try to install x11-toolkits/gtk20 and get this problem:
> 
> 
> 
> ...



What was the configure error?


----------



## ccc (Feb 14, 2011)

```
# cd /usr/ports/x11-toolkits/gtk20

# make install clean
===>  Vulnerability check disabled, database not found
===>  License LGPL20 accepted by the user
===>  Found saved configuration for gtk-2.22.1_1
===>  Extracting for gtk-2.22.1_1
=> SHA256 Checksum OK for gnome2/gtk+-2.22.1.tar.bz2.
===>   gtk-2.22.1_1 depends on file: /usr/local/bin/perl5.10.1 - found
===>  Patching for gtk-2.22.1_1
===>   gtk-2.22.1_1 depends on file: /usr/local/bin/perl5.10.1 - found
===>   gtk-2.22.1_1 depends on package: libtool>=2.2 - found
===>  Applying FreeBSD patches for gtk-2.22.1_1
===>   gtk-2.22.1_1 depends on executable: g-ir-scanner - found
===>   gtk-2.22.1_1 depends on executable: gmake - found
===>   gtk-2.22.1_1 depends on file: /usr/local/libdata/pkgconfig/xext.pc - found
===>   gtk-2.22.1_1 depends on file: /usr/local/libdata/pkgconfig/xrender.pc - found
===>   gtk-2.22.1_1 depends on file: /usr/local/libdata/pkgconfig/x11.pc - found
===>   gtk-2.22.1_1 depends on file: /usr/local/libdata/pkgconfig/xinerama.pc - found
===>   gtk-2.22.1_1 depends on file: /usr/local/libdata/pkgconfig/xi.pc - found
===>   gtk-2.22.1_1 depends on file: /usr/local/libdata/pkgconfig/xrandr.pc - found
===>   gtk-2.22.1_1 depends on file: /usr/local/libdata/pkgconfig/xcursor.pc - found
===>   gtk-2.22.1_1 depends on file: /usr/local/libdata/pkgconfig/xfixes.pc - found
===>   gtk-2.22.1_1 depends on file: /usr/local/libdata/pkgconfig/xdamage.pc - found
===>   gtk-2.22.1_1 depends on file: /usr/local/libdata/pkgconfig/xcomposite.pc - found
===>   gtk-2.22.1_1 depends on file: /usr/local/bin/perl5.10.1 - found
===>   gtk-2.22.1_1 depends on package: libtool>=2.2 - found
===>   gtk-2.22.1_1 depends on executable: pkg-config - found
===>   gtk-2.22.1_1 depends on shared library: cups.2 - found
===>   gtk-2.22.1_1 depends on shared library: intl - found
===>   gtk-2.22.1_1 depends on shared library: atk-1.0.0 - found
===>   gtk-2.22.1_1 depends on shared library: gdk_pixbuf-2.0.0 - not found
===>    Verifying install for gdk_pixbuf-2.0.0 in /usr/ports/graphics/gdk-pixbuf2
===>  Vulnerability check disabled, database not found
===>  License check disabled, port has not defined LICENSE
===>  Extracting for gdk-pixbuf-2.22.1
=> SHA256 Checksum OK for gnome2/gdk-pixbuf-2.22.1.tar.bz2.
===>  Patching for gdk-pixbuf-2.22.1
===>   gdk-pixbuf-2.22.1 depends on package: libtool>=2.2 - found
===>  Applying FreeBSD patches for gdk-pixbuf-2.22.1
===>   gdk-pixbuf-2.22.1 depends on executable: g-ir-scanner - found
===>   gdk-pixbuf-2.22.1 depends on executable: gmake - found
===>   gdk-pixbuf-2.22.1 depends on file: /usr/local/libdata/pkgconfig/xt.pc - found
===>   gdk-pixbuf-2.22.1 depends on file: /usr/local/libdata/pkgconfig/xi.pc - found
===>   gdk-pixbuf-2.22.1 depends on file: /usr/local/libdata/pkgconfig/x11.pc - found
===>   gdk-pixbuf-2.22.1 depends on package: libtool>=2.2 - found
===>   gdk-pixbuf-2.22.1 depends on executable: pkg-config - found
===>   gdk-pixbuf-2.22.1 depends on shared library: png.6 - found
===>   gdk-pixbuf-2.22.1 depends on shared library: tiff.4 - found
===>   gdk-pixbuf-2.22.1 depends on shared library: jpeg.11 - found
===>   gdk-pixbuf-2.22.1 depends on shared library: jasper.4 - found
===>   gdk-pixbuf-2.22.1 depends on shared library: glib-2.0.0 - found
===>  Configuring for gdk-pixbuf-2.22.1
checking for a BSD-compatible install... /usr/bin/install -c -o root -g wheel
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether gmake sets $(MAKE)... yes
checking whether to disable maintainer-specific portions of Makefiles... yes
checking for gcc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking for style of include used by gmake... GNU
checking dependency style of cc... gcc3
checking whether cc understands -c and -o together... yes
checking for cc option to accept ISO C99... -std=gnu99
checking for cc -std=gnu99 option to accept ISO Standard C... (cached) -std=gnu99
checking whether gmake sets $(MAKE)... (cached) yes
checking for pkg-config... /usr/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking build system type... i386-portbld-freebsd7.3
checking host system type... i386-portbld-freebsd7.3
checking for native Win32... no
checking how to print strings... print: not found
printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by cc -std=gnu99... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... (cached) 262144
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... no
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from cc -std=gnu99 object... ok
checking how to run the C preprocessor... cpp
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if cc -std=gnu99 supports -fno-rtti -fno-exceptions... no
checking for cc -std=gnu99 option to produce PIC... -fPIC -DPIC
checking if cc -std=gnu99 PIC flag -fPIC -DPIC works... yes
checking if cc -std=gnu99 static flag -static works... yes
checking if cc -std=gnu99 supports -c -o file.o... yes
checking if cc -std=gnu99 supports -c -o file.o... (cached) yes
checking whether the cc -std=gnu99 linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... freebsd7.3 ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating ./config.lt
config.lt: creating libtool
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking dependency style of cc -std=gnu99... gcc3
checking for nm... /usr/bin/nm -B
checking for some Win32 platform... no
checking whether build environment is sane... yes
checking for BASE_DEPENDENCIES... no
configure: error: Package requirements (glib-2.0 >= 2.25.15) were not met:

Requested 'glib-2.0 >= 2.25.15' but version of GLib is 2.24.2

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables BASE_DEPENDENCIES_CFLAGS
and BASE_DEPENDENCIES_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
===>  Script "configure" failed unexpectedly.
Please run the gnomelogalyzer, available from
"http://www.freebsd.org/gnome/gnomelogalyzer.sh", which will diagnose the
problem and suggest a solution. If - and only if - the gnomelogalyzer cannot
solve the problem, report the build failure to the FreeBSD GNOME team at
gnome@FreeBSD.org, and attach (a)
"/usr/ports/graphics/gdk-pixbuf2/work/gdk-pixbuf-2.22.1/config.log", (b) the
output of the failed make command, and (c) the gnomelogalyzer output. Also,
it might be a good idea to provide an overview of all packages installed on
your system (i.e. an `ls /var/db/pkg`). Put your attachment up on any website,
copy-and-paste into http://freebsd-gnome.pastebin.com, or use send-pr(1) with
the attachment. Try to avoid sending any attachments to the mailing list
(gnome@FreeBSD.org), because attachments sent to FreeBSD mailing lists are
usually discarded by the mailing list software.
*** Error code 1

Stop in /usr/ports/graphics/gdk-pixbuf2.
*** Error code 1

Stop in /usr/ports/x11-toolkits/gtk20.
#
```


----------



## ccc (Feb 14, 2011)

```
# cd /usr/ports/graphics/gdk-pixbuf2

# make install clean
===>   gdk-pixbuf-2.22.1 depends on executable: g-ir-scanner - found
===>   gdk-pixbuf-2.22.1 depends on executable: gmake - found
===>   gdk-pixbuf-2.22.1 depends on file: /usr/local/libdata/pkgconfig/xt.pc - found
===>   gdk-pixbuf-2.22.1 depends on file: /usr/local/libdata/pkgconfig/xi.pc - found
===>   gdk-pixbuf-2.22.1 depends on file: /usr/local/libdata/pkgconfig/x11.pc - found
===>   gdk-pixbuf-2.22.1 depends on package: libtool>=2.2 - found
===>   gdk-pixbuf-2.22.1 depends on executable: pkg-config - found
===>   gdk-pixbuf-2.22.1 depends on shared library: png.6 - found
===>   gdk-pixbuf-2.22.1 depends on shared library: tiff.4 - found
===>   gdk-pixbuf-2.22.1 depends on shared library: jpeg.11 - found
===>   gdk-pixbuf-2.22.1 depends on shared library: jasper.4 - found
===>   gdk-pixbuf-2.22.1 depends on shared library: glib-2.0.0 - found
===>  Configuring for gdk-pixbuf-2.22.1
checking for a BSD-compatible install... /usr/bin/install -c -o root -g wheel
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether gmake sets $(MAKE)... yes
checking whether to disable maintainer-specific portions of Makefiles... yes
checking for gcc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking for style of include used by gmake... GNU
checking dependency style of cc... gcc3
checking whether cc understands -c and -o together... yes
checking for cc option to accept ISO C99... -std=gnu99
checking for cc -std=gnu99 option to accept ISO Standard C... (cached) -std=gnu99
checking whether gmake sets $(MAKE)... (cached) yes
checking for pkg-config... /usr/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking build system type... i386-portbld-freebsd7.3
checking host system type... i386-portbld-freebsd7.3
checking for native Win32... no
checking how to print strings... print: not found
printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by cc -std=gnu99... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... (cached) 262144
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... no
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from cc -std=gnu99 object... ok
checking how to run the C preprocessor... cpp
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if cc -std=gnu99 supports -fno-rtti -fno-exceptions... no
checking for cc -std=gnu99 option to produce PIC... -fPIC -DPIC
checking if cc -std=gnu99 PIC flag -fPIC -DPIC works... yes
checking if cc -std=gnu99 static flag -static works... yes
checking if cc -std=gnu99 supports -c -o file.o... yes
checking if cc -std=gnu99 supports -c -o file.o... (cached) yes
checking whether the cc -std=gnu99 linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... freebsd7.3 ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating ./config.lt
config.lt: creating libtool
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking dependency style of cc -std=gnu99... gcc3
checking for nm... /usr/bin/nm -B
checking for some Win32 platform... no
checking whether build environment is sane... yes
checking for BASE_DEPENDENCIES... no
[B][color="Red"]configure: error: Package requirements (glib-2.0 >= 2.25.15) were not met:

Requested 'glib-2.0 >= 2.25.15' but version of GLib is 2.24.2[/color][/B]

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables BASE_DEPENDENCIES_CFLAGS
and BASE_DEPENDENCIES_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
===>  Script "configure" failed unexpectedly.
Please run the gnomelogalyzer, available from
"http://www.freebsd.org/gnome/gnomelogalyzer.sh", which will diagnose the
problem and suggest a solution. If - and only if - the gnomelogalyzer cannot
solve the problem, report the build failure to the FreeBSD GNOME team at
gnome@FreeBSD.org, and attach (a)
"/usr/ports/graphics/gdk-pixbuf2/work/gdk-pixbuf-2.22.1/config.log", (b) the
output of the failed make command, and (c) the gnomelogalyzer output. Also,
it might be a good idea to provide an overview of all packages installed on
your system (i.e. an `ls /var/db/pkg`). Put your attachment up on any website,
copy-and-paste into http://freebsd-gnome.pastebin.com, or use send-pr(1) with
the attachment. Try to avoid sending any attachments to the mailing list
(gnome@FreeBSD.org), because attachments sent to FreeBSD mailing lists are
usually discarded by the mailing list software.
*** Error code 1

Stop in /usr/ports/graphics/gdk-pixbuf2.
#
```

Howto upgrade to glib-2.0 >= 2.25.15?
I'll try the following:
	
	



```
# portupgrade -fr devel/glib20
```
 or maybe better:
	
	



```
# portupgrade -fr glib-2\*
```


----------



## wblock@ (Feb 14, 2011)

ccc said:
			
		

> ```
> Requested 'glib-2.0 >= 2.25.15' but version of GLib is 2.24.2
> ```
> 
> Howto upgrade to glib-2.0 >= 2.25.15?



Build the new version, deinstall the old, install the new, rebuild and deinstall/install everything that depended on it.

ports-mgmt/portmaster or ports-mgmt/portupgrade will do all that for you, which is why they are popular.

Upgrading FreeBSD Ports describes in more detail.


----------



## SirDice (Feb 15, 2011)

Before updating anything, please read /usr/ports/UPDATING. Make a habit of doing that.



> 20080323:
> AFFECTS: users of devel/glib20 and future users of devel/gio-fam-backend
> AUTHOR: gnome@FreeBSD.org
> 
> ...


----------



## ccc (Feb 18, 2011)

Thx, it seems to work now.


----------

