Foros del Web » Programando para Internet » PHP » Configuración PHP »

Entre otras cosas, debo recompilar PHP usando la librería GD :$

Estas en el tema de Entre otras cosas, debo recompilar PHP usando la librería GD :$ en el foro de Configuración PHP en Foros del Web. Hola, he descargado la versión 7 de Drupal que acaba de salir, pues me viene muy bien para un nuevo proyecto que tengo que hacer. ...
  #1 (permalink)  
Antiguo 10/01/2011, 15:33
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Pregunta Entre otras cosas, debo recompilar PHP usando la librería GD :$

Hola, he descargado la versión 7 de Drupal que acaba de salir, pues me viene muy bien para un nuevo proyecto que tengo que hacer. El caso es que en la Página de Informes de Estado (Inicio > Administración > Informes > Informes de Estado) me sale el siguiente mensaje:

Cita:
The GD Library for PHP is enabled, but was compiled without support for functions used by the rotate and desaturate effects. It was probably compiled using the official GD libraries from http://www.libgd.org instead of the GD library bundled with PHP. You should recompile PHP --with-gd using the bundled GD library. See the PHP manual.

La librería GD para PHP está habilitada, pero fue compilada sin soporte para funciones usadas en efectos de rotación y desaturación (o lo que sea). Probablemente ha sido compilada usando la librería oficial de GD (http://www.libgd.org) en lugar de la librería GD que viene con PHP. Usted (osea, yo) debe recompilar PHP --with-gd usando la librería GD incluida. Vea el Manual de PHP.


El manual, en la parte correspondiente a la instalación de GD dice:

Cita:
Para habilitar el soporte para GD configure PHP con --with-gd[=DIR] , donde DIR es el directorio de instalación base de GD. Para usar la versión de la biblioteca GD incluida recomendada (la cual fue primero incluida en PHP 4.3.0), use la opción de configuración --with-gd. La biblioteca GD requiere libpng y libjpeg para compilarse.
Preguntas:
  • Cuando dicen que [=DIR] es el directorio de instalación base de GD ¿a qué directorio se refieren? ¿debo crearlo yo? si existe ¿donde está?
  • Basta solo con escribir en la linea de comandos sudo --with-gd.
Tengo GD instalado, lo sé porque verifiqué con get_loaded_extensions().

Lo otro que me dice en los reportes es que:

Cita:
Su servidor es capaz de mostrar progreso de subida de archivo, pero no tiene las bibliotecas necesarias. Se recomienda instalar la biblioteca uploadprogress de PECL (preferida) o instalar APC.
Que ya la descargué, pero ahora cómo la instalo.

No quiero hacer nada sin tener algún dato, porque no quiero meter el delicado pie

Gracias de antemano
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #2 (permalink)  
Antiguo 11/01/2011, 15:30
Avatar de maturano  
Fecha de Ingreso: enero-2010
Ubicación: /home/
Mensajes: 537
Antigüedad: 14 años, 3 meses
Puntos: 36
Respuesta: Entre otras cosas, debo recompilar PHP usando la librería GD :$

Primero, en estas cuestiones de compilación, librerías, extensiones e instalación ES IMPORTANTE especificar el Sistema Operativo; entenderás. Vamos a presuponer estamos hablando de un GNU/Linux, solo porque las cosas serían más agradables .

Cita:
Iniciado por rogertm Ver Mensaje
Cuando dicen que [=DIR] es el directorio de instalación base de GD ¿a qué directorio se refieren? ¿debo crearlo yo? si existe ¿donde está?
Primero, no sé si lo sepas, la documentación tiene una manera de leerse. En este caso, cuando algo está entre corchetes ([ y ]) significa que es algo opcional.

GD es una librería Open Source independiente de PHP ( http://www.libgd.org ). Lo que te dice el aviso es que primero se compiló e instaló GD y luego se compiló PHP --con soporte para GD-- pero ligando a esa instalación de GD.

Para eso es ese [=DIR]. La compilación de PHP sería con el parámetro --with-gd=/ruta/a/la/libreria/GD ... eso es lo que se supone se hizo ahora; así es como está compilado tu PHP.


Lo que te dice el propio texto como "solución" es que NO UTILICES la librería "oficial". Que PHP incluye su propia versión de dicha librería GD y que, para utilizar esta --y no la compilada aparte-- debes compilar PHP solo con el parámetro "--with-gd", osea, sin especificar la ruta de la librería GD compilada --insisto: por aparte--.

Espero haberme explicado, pero no he dicho nada más que lo que el propio texto que copias y pegas ya dice. Y ojo, también te dice qué otras librerías necesitas tener para compilar el GD que viene con PHP.


Cita:
Iniciado por rogertm Ver Mensaje
Basta solo con escribir en la linea de comandos sudo --with-gd
Definitivamente no . --with-gd es un parámetro para la compilación. Lo que necesitas hacer es bajarte las fuentes de PHP y recompilar --igual lo dice--, con todo y su "configure, make y make install" y los otros parámetros necesarios para tener soporte a BDs y muchas otras cosas... es simple, pero es de tener cuidado.


Cita:
Iniciado por rogertm Ver Mensaje
Tengo GD instalado, lo sé porque verifiqué con get_loaded_extensions()
Y eso mismo te está diciendo. Sí lo tienes, pero no es la versión incluida en las fuentes de PHP.


De las extensiones de PECL ... viene con su propia utilería desde línea de comandos a modo que ejecutes "pecl install nombreDeExtension" y no tengas que hacer la compilación a mano. Es la misma idea de un gestor de paquetes de GNU/Linux.

Lo que nos remonta a mi pregunta inicial: ¿qué Sistema Operativo utilizas? y, cosa importante, ¿cómo está hecha la instalación de PHP ahora?.
__________________
I ♥ The Music!
  #3 (permalink)  
Antiguo 12/01/2011, 08:32
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Respuesta: Entre otras cosas, debo recompilar PHP usando la librería GD :$

Cita:
Iniciado por maturano Ver Mensaje
Primero, en estas cuestiones de compilación, librerías, extensiones e instalación ES IMPORTANTE especificar el Sistema Operativo; entenderás. Vamos a presuponer estamos hablando de un GNU/Linux, solo porque las cosas serían más agradables .
Si, claro, Ubuntu 9.10

Cita:
Iniciado por maturano Ver Mensaje
Primero, no sé si lo sepas, la documentación tiene una manera de leerse. En este caso, cuando algo está entre corchetes ([ y ]) significa que es algo opcional.

GD es una librería Open Source independiente de PHP ( http://www.libgd.org ). Lo que te dice el aviso es que primero se compiló e instaló GD y luego se compiló PHP --con soporte para GD-- pero ligando a esa instalación de GD.

Para eso es ese [=DIR]. La compilación de PHP sería con el parámetro --with-gd=/ruta/a/la/libreria/GD ... eso es lo que se supone se hizo ahora; así es como está compilado tu PHP.


Lo que te dice el propio texto como "solución" es que NO UTILICES la librería "oficial". Que PHP incluye su propia versión de dicha librería GD y que, para utilizar esta --y no la compilada aparte-- debes compilar PHP solo con el parámetro "--with-gd", osea, sin especificar la ruta de la librería GD compilada --insisto: por aparte--.

Espero haberme explicado, pero no he dicho nada más que lo que el propio texto que copias y pegas ya dice. Y ojo, también te dice qué otras librerías necesitas tener para compilar el GD que viene con PHP.
Si, explicas mejor que el manual

Cita:
Iniciado por maturano Ver Mensaje
De las extensiones de PECL ... viene con su propia utilería desde línea de comandos a modo que ejecutes "pecl install nombreDeExtension" y no tengas que hacer la compilación a mano. Es la misma idea de un gestor de paquetes de GNU/Linux.

Lo que nos remonta a mi pregunta inicial: ¿qué Sistema Operativo utilizas? y, cosa importante, ¿cómo está hecha la instalación de PHP ahora?.
Bueno, como novato en temas de GNU/Linux, mi instalación de PHP está hecha desde Synaptic, ¿debería reinstalarla desde linea de comandos? ¿cómo es exactamente? Confieso que siempre le he huido al tal configure, sobre todo cuando viene acompañado de make y make install

Bueno, mejor me pongo a leer el manual.

Gracias por la ayuda
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #4 (permalink)  
Antiguo 12/01/2011, 11:12
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Respuesta: Entre otras cosas, debo recompilar PHP usando la librería GD :$

Buej... leyendo las Notas de instalación de PHP en Debian GNU/Linux y como uso Ubuntu, creo que es lo más parecido, encontré lo siguiente:

Código:
$ aptitude search php5-gd
i A php5-gd                         - GD module for php5

$ aptitude search php5 |grep -i gd
i A php5-gd                         - GD module for php5
Preguntas:
  • ¿Qué quiere decir el i A delante? teniendo en cuenta que a veces pone p y otras v cuando muestra otros paquetes relacionados con PHP.
  • ¿Por qué sale pintadito de rojo cuando uso |grep -i gd?
  • ¿Si ejecuto apt-get install php5-gd se instalará la librería GD nativa de PHP y se sobrescribirá la otra?
Gracias
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #5 (permalink)  
Antiguo 12/01/2011, 12:41
Avatar de maturano  
Fecha de Ingreso: enero-2010
Ubicación: /home/
Mensajes: 537
Antigüedad: 14 años, 3 meses
Puntos: 36
Respuesta: Entre otras cosas, debo recompilar PHP usando la librería GD :$

Cita:
Iniciado por rogertm Ver Mensaje
Si, claro, Ubuntu 9.10
Bien... y al margen, preguntaré: ¿Por qué 9.10?. Siquiera ¿por qué no una 10.04?, que es LTS ... No soy fanático de tener siempre lo último, pero el problema de seguir utilizando versiones "viejas" (que esta no lo es tanto), es ... el asunto de soporte.


Cita:
Iniciado por rogertm Ver Mensaje
está hecha desde Synaptic, ¿debería reinstalarla desde linea de comandos? ¿cómo es exactamente? Confieso que siempre le he huido al tal configure, sobre todo cuando viene acompañado de make y make install
La gracia en utilizar la línea de comandos es que se habla más universal, independiente de la distribución o escritorio que otra persona utilice (como yo )... pero Synaptic solo es un frontend de esos comando; es lo mismo.

No es de temer hacer la compilación a mano, solo es tener cuidado y prestar atención a todos las librerías requeridas. Aunque desde ya te recomiendo utilizar checkinstall en lugar de hacer el make install. Esto para crear un paquete .deb que podrás luego administrar desde tu gestor (Synaptic) sin mayores complicaciones.


Cita:
Iniciado por rogertm Ver Mensaje
[/CODE]Preguntas:
  • ¿Qué quiere decir el i A delante? teniendo en cuenta que a veces pone p y otras v cuando muestra otros paquetes relacionados con PHP.
  • ¿Por qué sale pintadito de rojo cuando uso |grep -i gd?
  • ¿Si ejecuto apt-get install php5-gd se instalará la librería GD nativa de PHP y se sobrescribirá la otra?
Respuestas:
  • Esa es información del comando aptitude. La i te dice que el paquete está instalado; la A te dice que fue instalado de manera Automática como dependencia de otro paquete; la v te dice que es un paquete virtual, que en realidad no existe como paquete pero que enlaza a otro que sí es correcto. Ejemplo de esto, el paquete ssh que instala el cliente y el servidor, que son paquetes independientes. Esto es un asunto de aptitude, deberás encontrar toda esta información en su respectivo manual.
  • grep es un comando para aplicar un filtro. De todos los resultados que te da la búsqueda con aptitude, grep solo te muestra los que tengan el texto "gd". Solo te pinta en rojo dónde encontró ese texto para que lo visualices mejor , no tiene ningún significado.
  • Ahí sí que no sé... . Si te animas, puedes hacer un aptitude show php5-gd y te mostrará la información de ese paquete. Quizá en su descripción responda esa pregunta, sino, en todo caso, te mostrará el correo de quien mantiene el paquete y podrías hacer la pregunta directamente .

Acá es medio día. Déjame ver en la noche e igual hago la instalación de Drupal 7 (que sí quiero echarle un ojo) y te cuento si me topé con lo mismo. Hasta entonces
__________________
I ♥ The Music!
  #6 (permalink)  
Antiguo 12/01/2011, 14:25
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Respuesta: Entre otras cosas, debo recompilar PHP usando la librería GD :$

Cita:
Iniciado por maturano Ver Mensaje
Bien... y al margen, preguntaré: ¿Por qué 9.10?. Siquiera ¿por qué no una 10.04?, que es LTS ... No soy fanático de tener siempre lo último, pero el problema de seguir utilizando versiones "viejas" (que esta no lo es tanto), es ... el asunto de soporte.
Es que en Cuba la conexión es lenta en grado superlativo y me es imposible descargar un CD o un DVD y mucho menos acceder a los repositorios, y en casa no tengo Internet. Entonces tengo que depender de algún amigo que tenga el CD de instalación para copiarlo y ese tipo de cosas. El repositorio de Ubuntu lo tengo en mi computadora, como una tortuga carga su casa

Cita:
Iniciado por maturano Ver Mensaje
  • Esa es información del comando aptitude. La i te dice que el paquete está instalado; la A te dice que fue instalado de manera Automática como dependencia de otro paquete; la v te dice que es un paquete virtual, que en realidad no existe como paquete pero que enlaza a otro que sí es correcto. Ejemplo de esto, el paquete ssh que instala el cliente y el servidor, que son paquetes independientes. Esto es un asunto de aptitude, deberás encontrar toda esta información en su respectivo manual.
Bueno, vamos a ver, que ya ni me acordaba por donde es que había comenzado todo esto , desintalé y volví a instalar php5-gd, pero no me funcionó, ahora me dio por verificar libgd y tengo estos paquetes instalados:
Código:
$ aptitude search libgd     
i   libgd2-xpm                - GD Graphics Library version 2                                   
i   libgdata-common            - Library for accessing GData webservices - common data files         
i   libgdata-google1.2-1    - Client library for accessing Google POA through SOAP interface  
i   libgdata1.2-1            - Client library for accessing Google POA through SOAP interface                                  
i   libgdata5                - Library for accessing GData webservices - shared libraries                         
i   libgdbm3                - GNU dbm database routines (runtime version)
i   libgdict-1.0-6            - GNOME Dictionary base library
i   libgdiplus                - interface library for System.Drawing of Mono
i   libgdu-gtk0                - GTK+ standard dialog library for libgdu
i   libgdu0                    - GObject based Disk Utility Library
La pregunta es, crees que si elimino libgd se resuelva el problema, tal vez comience a usar php5-gd por si solo el sistema...

Voy a hacer la prueba a ver que pasa
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #7 (permalink)  
Antiguo 13/01/2011, 16:03
Avatar de maturano  
Fecha de Ingreso: enero-2010
Ubicación: /home/
Mensajes: 537
Antigüedad: 14 años, 3 meses
Puntos: 36
Respuesta: Entre otras cosas, debo recompilar PHP usando la librería GD :$

Instalé Drupal 7 sobre un Ubuntu 10.04 y no me mostró el mismo mensaje. En su lugar tengo:




La librería se llama libgd2-xpm es la correcta y es instalada automáticamente por php5-gd:
Cita:
maturano:~$ aptitude show php5-gd
Package: php5-gd
New: yes
State: installed
Automatically installed: no
Version: 5.3.2-1ubuntu4.7
Priority: optional
Section: php
Maintainer: Ubuntu Core Developers <[email protected]>
Uncompressed Size: 156k
Depends: libc6 (>= 2.4), libfreetype6 (>= 2.2.1), libgd2-xpm (>= 2.0.36~rc1~dfsg), libjpeg62, libpng12-0 (>= 1.2.13-4), libt1-5 (>= 5.1.0), libx11-6, libxpm4, zlib1g (>= 1:1.1.4), phpapi-20090626+lfs,
php5-common (= 5.3.2-1ubuntu4.7)
Description: GD module for php5
This package provides a module for handling graphics directly from PHP scripts. It supports the PNG, JPEG, XPM formats as well as Freetype/ttf fonts.

...
... simplemente no funciona en Ubuntu 9.10 "por un problema de dependencias". Son solo dos funciones las que estarían con problemas, no sé que tanto afecte eso... :-/ sorry :-/.

¿Tu opción?. Hacer tu propia compilación o --y usualmente no digo esto-- utilizar XAMPP para GNU/Linux .
__________________
I ♥ The Music!

Última edición por maturano; 13/01/2011 a las 16:12
  #8 (permalink)  
Antiguo 14/01/2011, 07:55
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Respuesta: Entre otras cosas, debo recompilar PHP usando la librería GD :$

Bueno, esto no es algo que sea imprescindible para lo que estoy haciendo ahora, de todas maneras es un proyecto que debo subir a nuestro proveedor de hostin, que estoy completamente seguro que tendrás más problemas que yo...

Gracias @maturano por tu ayuda y por todo lo demás...
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose

Etiquetas: php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:25.