Como configurar Xcode 4.2.1 en MAC OS X Lion para poder conectarse a MySQL

0.- Necesitas tener habilitada la cuenta de root en el OS, si no sabes como activarla, consulta este enlace:

http://el-anexo.blogspot.com/2012/01/como-activar-el-usuario-root-en-os-x.html



1.- Si no tienes instalado ya el MySQL, descargalo desde aquí:


      Si necesitas las instrucciones sobre como instalarlo:

http://dev.mysql.com/doc/refman/5.5/en/macosx-installation.html

1.1.- Si no quieres instalar el MySQL o lo único que necesitas es el Conector, puedes descargarlo desde aquí:


          http://dev.mysql.com/downloads/connector/c/


Descomprimelo y guarda la carpeta en algún lugar donde recuerdes su ubicación ya que la vas a ocupar para la configuración.

2.- Abrimos el XCode y creamos un nuevo proyecto. En el Menu Mac OS X (1) seleccionamos Application y en el panel que aparece a la derecha seleccionamos Command Line Tool y hacemos clic en el botón Next. 

3.- En la ventana que nos aparece a continuación, escribimos el nombre del proyecto, en este caso MyDummieTest (o como quieras llamarlo), en el textbox ProductName, el nombre de la compañía en el campo Company Identifier y hacemos clic en Next.


4.- Seleccionamos o creamos la carpeta en la que queramos guardar el proyecto y hacemos clic en el botón Create.

5.- En la pantalla del XCode, con el proyecto seleccionado (1), hacemos clic sobre el target que queramos configurar (2), después, si es que no esta seleccionado, hacemos clic en el tab Build Settings (3); debajo de este tab buscamos una cabecera que diga "Search Paths" (4) y si es necesario, hacemos clic en el triangulito que esta a la izquierda para abrirlo, entre las opciones que se despliegan, buscamos una que dice "Header Search Paths" (5) y hacemos click del lado derecho de esta etiqueta, mas o menos a la altura de donde esta el nombre del target, para que nos aparezca una ventana donde podremos introducir datos haciendo clic en el botón +



Hacemos clic en el botón + y escribimos $(inherited) , hacemos click una vez mas en el mismo botón y esta vez escribimos /usr/local/mysql/include; finalmente hacemos clic en el botón Done.


* Si estas usando el conector, en lugar de /usr/local/mysql/include debes escribir la ruta a la carpeta include que se encuentra dentro de la carpeta donde descompasaste el conector.

6.- Repetimos el procedimiento pero ahora para la opción que esta abajo "Library Search Paths" e introducimos los valores $(inherited) y /usr/local/mysql/lib/


* Si estas usando el conector, en lugar de /usr/local/mysql/lib debes escribir la ruta a la carpeta lib que se encuentra dentro de la carpeta donde descompasaste el conector.

Breviario cultural: 
$(inherited) - Obtiene las rutas ya configuradas previamente.

/usr/local/mysql/include y /usr/local/mysql/lib/ son las rutas donde están guardados los archivos .h y .lib, que son necesarios, los primeros para el desarrollo y los segundos para ser enlazados en tiempo de compilación.


7.- Ahora Buscamos una cabecera que se llame Linking y si es necesario hacemos clic en el triangulito para abrirla, dentro  de las opciones que se despliegan, buscamos una que se llame "Other Linker Flags", de igual forma hacemos click del lado derecho de la etiqueta para que aparezca el cuadro para poder introducir datos.



Aquí vamos a escribir lo siguiente: $(inherited) -lmysqlclient -lm -lz, no olvides presionar el botón + para añadir cada opción y Done cuando termines.

Y listo !!!!, hemos terminado de configurar el Xcode para enlazarnos a MySQL.

Para poder probar que todo esto funcione realmente, necesitamos ser capaces de ver el contenido de la ventana All Ouput:

La pantalla All Ouput se encuentra en la parte inferior derecha dentro del Xcode(1), en caso de que no puedas verla, en la parte superior derecha, hay un grupo de 3 botones que tienen la etiqueta View(2), debes de seleccionar el que esta en medio (el que tiene el punto rojo en la imagen siguiente), y la pantalla All Ouput se hará visible.



Ahora, simplemente presionamos:

cmd+b para construir el proyecto... y todo debe salir ok 
cmd+r para ejecutarlo y...

(o si lo prefieres simplemente presiona el botón de play y...)

a) si te aparece un mensaje en la pantalla de All Ouput que dice: 

2012-01-06 23:40:30.508 MyDummieTest[54993:60b] Hello, World! 

FELICIDADES !!!!, ya estas del otro lado y todo funciona !!!

b) si te aparece un mensaje extraño que dice algo como:

dyld: Library not loaded: libmysqlclient.18.dylib

  Referenced from: /Users/user/Library/Developer/Xcode/DerivedData/MyDummieTest-fbtrwbqqhlxlyogbezbbppggxhzf/Build/Products/Debug/MyDummieTest

  Reason: image not found


es por que te hace falta crear un "Acceso directo" de la librería libmysqlclient.18.dylib en /usr/lib/ así que, manos a la obra:

1.- Abrimos la terminal.
2.- Comprobamos si existe el "Acceso directo" en /usr/lib, escribimos:


ls /usr/lib | grep libmysqlclient.* presionamos enter y... no nos aparece nada.


Ahora, escribamos:


sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib y presionamos enter


* Si estas usando el conector, en lugar de /usr/local/mysql/lib/ debes escribir la ruta a la carpeta lib que se encuentra dentro de la carpeta donde descompasaste el conector y en lugar de libmysqlclient.18.dylib el nombre del archivo .dylib que se encuentre allí.



te va a pedir el pasword de root, no el de tu cuenta, lo escribes y le das enter.


Otra vez escribimos ls /usr/lib | grep libmysqlclient.* y de nuevo, presionamos enter, pero esta ves:




Yo$ ls /usr/lib | grep libmysqlclient.*
libmysqlclient.18.dylib


ya creo el "Acceso Directo".

Listo !!!, volvemos a construir y a ejecutar y todo debe de estar OK.

*Para obtener mas información sobre la orden ln o sudo, en tu terminal escribe:
man ln <-- para ver la información de ln o man sudo <-- para ver la información de sudo.





No hay comentarios: