Instalar la librería GD en Mac OS X Leopard

Recientemente en el trabajo nos vimos creando un programita que requería de GD para funcionar… pero se me hacía un poco molesto tener que estar subiendo los archivos cada vez que se me antojaba probarlo… Así que… teniendo mi adorada mac un servidor integrado… php integrado… por qué no instalarle GD??

Manos a la obra, para la siguiente receta necesitamos estos ingredientes:

  • Haber hecho un backup previo
  • Tener la última version del developer tools de apple (Xcode 3.0 como minimo). Los dev tools están en el DVD que venía con la mac.
  • X11 cliente… este ya está instalado en 10.5.x
  • X11SDK, que no es lo mismo que el cliente.
  • Revisar que efectivamente tienes el back up
  • No haber instalado nada relacionado con GD, libpng, libjpg o freetype anteriormente (o al menos saber cómo adaptar estas instrucciones a lo que tienes)



Instalando libjpeg

  • Creas un directorio temporal llamado recursos en la raíz del disco duro.
  • Descargas libjpeg y lo extraes en “recursos”.
  • Abres el terminal y logueas en root digitando “su”

En caso de que no tengas habilitados los privilegios de administrador es fácil habilitarlos con la utilidad de directorios.app que se localiza en /Applications/Utilities… simplemente lo abres, das click en edit option → “Enable Root User” y luego asignando un password.

Luego en terminal escribes:

cd /Recursos/jpeg-6b
cp /usr/share/libtool/config.sub .
cp /usr/share/libtool/config.guess .

Luego, para procesadores de 32 bit escribes:

./configure --enable-shared

Y para los de 64 bits:

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch ppc
-arch ppc64 -arch i386 -arch x86_64 -g -Os
-pipe -no-cpp-precomp" CCFLAGS="-arch ppc
-arch ppc64 -arch i386 -arch x86_64 -g -Os
-pipe" CXXFLAGS="-arch ppc -arch ppc64 -arch i386
-arch x86_64 -g -Os  -pipe" LDFLAGS="-arch ppc
-arch ppc64 -arch i386 -arch x86_64 -bind_at_load"
./configure --enable-shared

Por ultimo escribes esto para instalarlo:

make
mkdir -p /usr/local/include
mkdir -p /usr/local/bin
mkdir -p /usr/local/lib
mkdir -p /usr/local/man/man1
make install




Instalando la librería GD

Descargas PHP y lo extraes en “Recursos” (php-5.2.4 es lo adecuado porque es la misma versión que viene preinstalada en Leopard).

De nuevo en terminal.app:

cd /Recursos/php-5.2.4/ext/gd
phpize

Para 32 Bits:

./configure --with-zlib-dir=/usr --with-jpeg-dir=/usr/local/lib
--with-png-dir=/usr/X11R6 --with-freetype-dir=/usr/X11R6
--with-xpm-dir=/usr/X11R6

Para 64 Bits:

MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch ppc -arch ppc64
-arch i386 -arch x86_64 -g -Os  -pipe -no-cpp-precomp"
CCFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g
-Os  -pipe" CXXFLAGS="-arch ppc -arch ppc64 -arch i386
-arch x86_64 -g -Os  -pipe" LDFLAGS="-arch ppc -arch ppc64
-arch i386 -arch x86_64 -bind_at_load" ./configure
--with-zlib-dir=/usr --with-jpeg-dir=/usr/local/lib
--with-png-dir=/usr/X11R6 --with-freetype-dir=/usr/X11R6
--with-xpm-dir=/usr/X11R6 --with-gd

Y luego escribes:

make
make install



Integramos al Apache

Renombras el archivo php.ini.default a php.ini que se encuentra en /etc.

Lo abres y le agregas esta linea:

extension=gd.so

Luego buscas esta:

extension_dir = "./" 

Y la desactivas poniendole un punto y coma adelante.

>;extension_dir = "./" 


Por último reinicias el Apache:

apachectl restart

y creas un archivo llamado test.php que contenga esto:

<?
phpinfo();
?>

Y si ves algo parecido a esto:

GD info

Estás listo.

Provecho

  • Andreu
    Hola de nuevo.

    Conseguí solucionar el problema anterior, pero ahora, después de introducir el código para los 64bits que va después del phpize, me dice algo como "--with-zlib-dir=/usr: No such file or directory" en esta y otras instrucciones "--with" que aparecen en el código.
    Después, al hacer el make, me dice que no hay ficheros seleccionados y que no hay makefile.

    A que puede ser debido el error del "--with"? He probado de ponerlo sin el salto de línea, seguido de la instrucción anterior, pero tampoco ha funcionado.
  • Es raro que no tengas make, seguro que tenés el Xcode y el X11SDK instalado?
  • Andreu
    Hola.
    Estaba interesado en instalar las librerías GD en mi Mac pero me da error en uno de los pasos de tu explicación
    En concreto, cuando pongo "mkdir -p /usr/local/man/man1" me dice que no tengo permisos. He logueado como administrador poniendo mi contraseña y igualmente no me lo permite.

    Alguna solucion? Gracias!
  • Hola Andreu, trataste con:

    ==
    sudo chmod -R 755 /usr/local/man

    cd /usr/local/man

    mkdir -p man1

    ====

    Tratale y si no lo logras me avisas ;)

blog comments powered by Disqus
  • Mail
  • Delicious
  • Digg
  • StumbleUpon
  • Twitter
  • Technorati