((/news-custom/public/logo_freebsd.png|logo FreeBSD|C|logo FreeBSD))

Sous [FreeBSD|http://www.freebsd.org/|en], quelques fois on est un peu « à la ramasse » niveau fraîcheur des paquets. C’est pourquoi, j’utilise le système de ports.

Ce matin j’ai décidé de mettre à jour [WebKitGTK+|http://webkitgtk.org/|en], je maintiens ma propre branche, car j’ai toujours une erreur avec @@GObject-Introspection@@ (c’est activé dans le [port officiel|http://www.freshports.org/www/webkit-gtk2/|en]) $$Actuellement la version présente dans les ports est la 1.4.3.$$, je modifie donc légèrement le @@Makefile@@ et je lance la commande suivante pour générer le fichier @@distinfo@@ (il contient la somme des contrôles, permettant de vérifier que le fichier téléchargé est complet) :

///
root@bornem:/usr/ports/www/webkit-gtk2 # make makesum
///

Ensuite je lance la compilation, et je précise le dossier dans lequel, je souhaite installer cette bibliothèque. Je fais toujours ça, car cela me permet de corriger le fichier @@pkg-plist@@, et de relancer la compilation autant de fois que nécessaire afin de ne plus obtenir d’erreurs.

Pour cela je rajoute une variable dans le @@Makefile@@

///[…]
NO_MTREE= yes

.include

[…]
///

///
root@bornem:/usr/ports/www/webkit-gtk2 # mkdir /tmp/webkit-gtk2
root@bornem:/usr/ports/www/webkit-gtk2 # make install PREFIX=/tmp/webkit-gtk2
///

L’étape de configuration, celle qui permet de vérifier que toutes les dépendances sont installées, s’est arrêtée de manière prématurée.

///[…]
checking for icu-config… /usr/local/bin/icu-config
checking for ZLIB… no
configure: error: Package requirements (zlib) were not met:

gnome-config: not found
No package ‘zlib’ found

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

Alternatively, you may set the environment variables ZLIB_CFLAGS
and ZLIB_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/www/webkit-gtk2/work/webkit-1.6.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/www/webkit-gtk2.
*** Error code 1

Stop in /usr/ports/www/webkit-gtk2.
///

Ce message indique, qu’il ne trouve pas la bibliothèque __zlib__ pour la compression des données.

Je suis resté perplexe, car [zlib|http://zlib.net/|en] est présent dans le  »base system » de FreeBSD.

En effet, le script __configure__ recherche le fichier @@pkgconfig/zlib.pc@@, or ce dernier est absent. Heureusement que l’on peut surcharger certaines variables d’environnement, notamment __ZLIB_CFLAGS__ et __ZLIB_LIBS__, évitant ainsi d’avoir recours à l’utilitaire, @@pkg-config@@, et de rechercher dans @@/usr/local/lib@@.

///
ZLIB_CFLAGS C compiler flags for ZLIB, overriding pkg-config
ZLIB_LIBS linker flags for ZLIB, overriding pkg-config
///

Je modifie donc le @@Makefile@@

///[…]
CONFIGURE_ENV= ac_cv_path_FLEX= »${LOCALBASE}/bin/flex »
ac_cv_path_DOLT_BASH= » »
ZLIB_CFLAGS= »-I/usr/include »
ZLIB_LIBS= »-L/usr/lib -lz »
///

J’ai pu enfin mettre à jour __www/webkit-gtk2__.

WebKitGTK étant maintenu par @@gnome@@@, je suis allé vérifier, si, sur le dépôt [MarcusCom|http://www.marcuscom.com:8080/cgi-bin/cvsweb.cgi/], @@kwm@@@, ou @@mezz@@@ avaient rencontré ce problème. La révision n° [1.81|http://www.marcuscom.com:8080/cgi-bin/cvsweb.cgi/ports/www/webkit-gtk2/Makefile.diff?r1=1.81&r2=1.82] est quasiment identique à la mienne.