Tags

, , , , ,

Bueno pues, como parte de mi formación como Ingeniero en Sistemas Computacionales, me he topado con varios problemas de los cuales hasta he compartido las soluciones que he encontrado. Esta vez, toca turno a ver como jodidos instalar mysqsl y las bibliotecas necesarias para poder programar en lenguaje C con el API de MySql.

La distribución de linux que ocupo es Ubuntu Netbook Remix en la versión Jaunty Jackalope (9.04) y compilo con gcc. Lo primero es instalar mysql, así que voy a una terminal de consola y tecleo:

$ sudo apt-get install mysql-server

Obviamente, el aptitude y el get son propios de las hijas de Debian (como Ubuntu) de modo que si vas a usar un administrador de paquetes, busca el adecuado a tu distribución (i.e yast, yum, rpm) debo aclararlo por que me ha tocado ver quien trata de usar el “apt-get install” en Suse o Fedora, y todo por que sólo conocen Ubuntu.

Luego de que me apareciera la lista de otros paquetes que me hacian falta le di que sí, que queria que instalara todo. Fueron como 100 MB, ya después, en la preconfiguración nos aparece una interfaz que nos solicita la contraseña del usuario root para el servidor. Tras ingresarlo 2 veces para confirmar, ya quedo instalado el asunto.

Lo que sigue es instalar las bibliotecas de desarrollo; para conocer el paquete que nos hace falta, nos valemos del comando mysql_config, así que nuevamente en consola:

$ mysql_config

En caso de que las bibliotecas de desarrollo ya esten configuradas la salida sería mas o menos como:

Options:
 --cflags         [-I/usr/include/my...
 --include        [-I/usr/include/my...
 --libs           [-Wl,-Bsymbolic-fun...
 --libs_r         [-Wl,-Bsymbolic-fun...
 --socket         [/var/run/mysqld/my...
 --port           [0]
 --version        [5.0.75]
 --libmysqld-libs [-Wl,-Bsymbolic-fun...

En caso contrario:

The program 'mysql_config' can be found in the following packages:
 * libmysqlclient15-dev
 * libmysqlclient16-dev

Así que para instalar dicha dependencia, volvemos a la consola (que Dios la bendiga!):

$ sudo apt-get install libmysqlclient15-dev

Aquí he de aclarar que elegí ese paquete en específico por sobre otros por que no es el mas reciente ni el mas viejo; me aparecían desde libmysqlclient10-dev hasta el libmysqlclient16-dev y algunos otros paquetes para otros lenguajes como C++, Ruby, Perl, etc, etc.

Una vez instalado procederemos a probar que no tiene errores nuevamente con el comando mysql_config como ya vimos anteriormente. Para compilar los programas que hagan uso de mysql, solo hace falta el siguiente comando:

$ gcc -o mysql $(mysql_config --cflags) archivo_entrada.c $(mysql_config --libs)

Con esto, llamamos los argumentos extra para el gcc desde los parametros de mysql sin tener que escribirlos por completo y a mano. Y así es como eché a andar mysql para programar desde C.

Vic.