Installer la version stable de php-gtk sur archlinux

Aujourd'hui j'ai décidé d'apprendre à programmer avec php-gtk.

Pour installer cette extension sur archlinux il nous faut php 5.2, nous allons donc compiler cette version:


cd /usr/local/src
sudo wget http://fr.php.net/distributions/php-5.2.14.tar.bz2
md5sum php-5.2.14.tar.bz2
sudo tar xvjf php-5.2.14.tar.bz2
cd php-5.2.14
sudo ./configure --prefix=/usr/local --sysconfdir=/usr/local/etc/php --with-config-file-path=/usr/local/etc/php --with-config-file-scan-dir=/usr/local/etc/php/conf.d --enable-inline-optimization --enable-shared --mandir=/usr/local/share/man --with-curl --with-gd --with-zlib --with-bz2 --with-jpeg-dir=shared,/usr --with-png-dir=shared,/usr --with-openssl --with-pear --with-readline --with-mysql=mysqlnd --enable-calendar --enable-mbstring --enable-bcmath --with-pdo-odbc=shared,unixODBC,/usr
sudo make
sudo make test
sudo make install

 
On peut mettre un php.ini:

sudo cp php.ini-recommended ../../etc/php/php.ini

 
Il nous reste juste à remplacer la ligne (sudo nano /usr/local/etc/php/php.ini):

extension_dir = "./"

 
Par:

extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20060613"

 
Une fois php 5.2 installé nous pouvons compiler php-gtk comme suit:


cd /usr/local/src
sudo wget http://gtk.php.net/distributions/php-gtk-2.0.1.tar.gz
sudo tar xzvf php-gtk-2.0.1.tar.gz
cd php-gtk-2.0.1
export PATH=/usr/local/bin:$PATH && sudo ./buildconf
sudo ./configure --prefix=/usr/local --with-php-config=/usr/local/bin/php-config
sudo make
sudo make test
sudo make install

 
Pour finir il nous reste plus qu'à activer l'extension:


sudo mkdir /usr/local/etc/php/conf.d
sudo nano /usr/local/etc/php/conf.d/php-gtk.ini

 
et on copie colle cette ligne:


extension=php_gtk2.so

 
Maintenant nous pouvons tester une class, beaucoup d'exemples sont disponibles sur internet
(je vais utiliser la 1ère class que j'ai trouvé ici : http://www.ydhen.com/ydokuwiki/doku.php?id=wiki:programmation:php-gtk2:exemples)

Contenu de notre class Fenetre:


//On dérive la fenêtre de l'objet fenêtre
class Fenetre extends GtkWindow {

function __construct() {
//apparemment il faut quand meme lancer le constructeur du parent
parent::__construct();
$this->connect_simple('destroy', array($this, 'quit'));
$this->show_all();
}

function quit() {
Gtk::main_quit();
}
}

new Fenetre();
Gtk::main();
?>

 
Pour lancer le code:


/usr/local/bin/php fenetre.php

 
Ce qui nous donne le résultat:
Une fentre avec php-gtk | Installer la version stable de php-gtk sur archlinux
Vus : 195
Publié par Philippe EauLand : 110