debug_mode=ON

Buscar en

 
 

Compilando PHP-GTK en Ubuntu

Escrito por XeKtRuM hace 1 años bajo Dominio Público
1134 visitas. Etiquetas: php-gtk, gtk, php, ubuntu

Para compilar php-gtk en Ubuntu necesitamos las siguientes cosas

  1. Autotools (automake, autoconf, etc...)
  2. Herramientas de compilación (make, gcc, etc...)
  3. GTK+ 2.10 o superior, incluyendo cabezeras.
  4. PHP 5.2 o superior, incluyendo cabezeras.
  5. LibGlade, incluyendo cabezeras.
  6. CVS (solo si vas a compilar HEAD)

La mayoria de estas cosas quiza ya esten instaladas sin embargo lo mas probable es que un te falten paquetes. Instala lo siguiente para asegurarte

$ sudo apt-get install php5-cli php5-dev, php5-gd libgtk2.0-dev libglade2-dev

Nota

Los repositorios actuales de Ubuntu aun tienen php 5.2.6, el cual yo creo ya esta pasadito. si quieres una version mas actual asegurate de agregar la siguiente linea a tu /etc/apt/sources.list

deb http://ppa.launchpad.net/tarkus/ubuntu  intrepid main

y haz un apt-get update luego continua con el primer paso

FinNota

2.0.1

Ahora obtenmos php-gtk 2.0.1

$ wget http://gtk.php.net/distributions/php-gtk-2.0.1.tar.gz 

Descomprimimos

$ tar xvzf php-gtk-2.0.1.tar.gz

HEAD

Head en este momento necesita la extension cairo para php

$ cvs -d :pserver:cvsread@cvs.php.net:/repository login
$ cvs -d :pserver:cvsread@cvs.php.net:/repository co php-gtk
$ svn co svn://whisky.macvicar.net/php-cairo
$ cd php-cairo
$ phpize
$ ./configure && make
$ sudo make install

Ok ya tienes php-cairo ahora continuemos con php-gtk

Si quieres compilar HEAD (que vendria siendo como el snapshot)

$ wcvs -d :pserver:cvsread@cvs.php.net:/repository login
<Presiona enter cuando te pida password>
$ cvs -d :pserver:cvsread@cvs.php.net:/repository co php-gtk

Te aparecera un nuevo directorio "php-gtk" (php-gtk-2.0.1 en el caso de estar compilando 2.0.1 )entra en el y continua

Ahora bien esta guia la baso en Intrepid, para Gutsy tambien debiera ser a menos que no hayas hecho actualizaciones hace un buen tiempo, un cambio en una actualizacion rompe el build, para que esto no suceda debes aplicar el siguiente parche:

$ wget http://www.opsat.net/temp/buildfix.diff 
$ patch -p1 < buildfix.diff

Ok ahora que esta parchado sigamos

$ ./buildconf

Si estas compilando 2.0.1 haz

$ ./configure

si es HEAD haz lo siguiente

$ CFLAGS="-DHAVE_CAIRO" ./configure

Termino de configurar? Sigamos

$ make
$ sudo make install

y LISTO!!! ya tienes php-gtk compilado por ti mismo e instalado, vamos a probarlo

$ php -d extension=php_gtk2.so -r "$window = new GtkWindow(); $window->connect_simple('destroy',array('gtk','main_quit')); $window->add(new GtkLabel('Hello World')); Gtk::main();"

Nota : si compilaste HEAD junto con cairo debes agregar antes de "-r" lo siguiente "-d extension=cairo.so" si no te arrojara un error.

Deberias ver una ventana Gtk+ con el mensaje "Hello World", si es asi felicidades ya tienes php-gtk funcionando ;)

 

¡Votalo! 2 votos
¡Compártelo!

        

&nbps;

&nbps;

XeKtRuM

Sobre XeKtRuM

Este usuario no ha completado su perfil.

 
Regístrate o haz login para participar.
¿Todavía no conoces debugmodeon?
debugmodeon es la red social para profesionales de la informática
descubre debugmodeon
 

2 comentarios en "Compilando PHP-GTK en Ubuntu"

qwertyuiop
qwertyuiop escribió
hace 1 años

#1   

interesante tu articulo, ya que yo tengo muy poca idea de como compilar este tipo de cosas (ni siquiere he compilado PHP , en realidad no lo he necesitado), pero me asalta una duda:

¿cuales son las reales ventajas de usar PHP-GTK?

lo digo por que por lo he alcance a leer, no se puede compilar (PHP), por lo tanto no se puede generar una especie de ejecutable, entonces quizas se pueda usar via web?

mas que nada de lo del ejecutable, es por que si tengo pensado crear aplicaciones para usuarios, no los voy a obligar a bajarse PHP y GTK para que lo interprete y puedan usarlo.

saludos y gracias por tu articulo.

 

XeKtRuM
XeKtRuM escribió
hace 1 años

#2   

Hola,

Gracias primero que nada por que tu comentario inspiro un nuevo post venidero para tratar este tema. Hoy estaré publicandolo, atento para que lo veas.

Saludos
./XeKtRuM

 
 
 
 

© Copyright 2008-2009 debug_mode=ON | Aviso legal | Contacto | FAQ | ¿Quiénes somos? |