miércoles, septiembre 24, 2014

Instalación del módulo mysql-python en NAS Synology

Instalar gcc en Synology

Para la instalación de mysql-python es necesario el compilador gcc, por lo que lo obtendremos de Synology Open Source Project (http://sourceforge.net/projects/dsgpl). El paquete a descargar dependerá de la versión de NAS Synology que tengamos, por lo que tendremos que utilizara el comando:


uname -a


para conocer la versión de nuestro kernel y arquitectura instalada y descargar el paquete correspondiente. En mi caso he descargado: gcc463_glibc213_i686_cedarview-GPL.tgz pues mi equipo muestra cedarview y i686. Ahora lo descargamos y lo extraemos:


cd /usr/local
http://kent.dl.sourceforge.net/project/dsgpl/DSM%205.2%20Tool%20Chains/Intel%20x86%20Linux%203.2.40%20%28Cedarview%29/cedarview-gcc463_glibc213_i686_patched-GPL.txz
tar -xvJf cedarview-gcc463_glibc213_i686_patched-GPL.txz
rm
cedarview-gcc463_glibc213_i686_patched-GPL.txz


Instalación de las fuentes de Mysql

Synology utiliza MariaDB, pero para la compilación del módulo de python podemos utilizar las fuentes de Mysql. Descargaremos la versión que coincida con la que ya tenemos instalada.

cd /volume1
wget -nd http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.39-linux2.6-i686.tar.gz
gzip -d mysql-5.5.39-linux2.6-i686.tar.gz
tar -xvf mysql-5.5.39-linux2.6-i686.tar
rm mysql-5.5.39-linux2.6-i686.tar


Necesitamos mysql_config que no está en el NAS.


ln -s /volume1/mysql-5.5.39-linux2.6-i686/bin/mysql_config /usr/bin/mysql_config

Instalación de pip

Descarga e instalación:

wget -nd https://bootstrap.pypa.io/get-pip.py
python get-pip.py


Instalación de mysql-python

Tenemos que definir todas estas variables de entorno para que se adapte al compilador y las fuentes de Mysql que hemos instalado, por lo que será necesario modificarlas para que se adapten a nuestra configuración:


export CROSS_PREFIX=i686-pc-linux-gnu
export TARGET=i686-pc-linux-gnu
export TOOLCHAIN=/usr/local/i686-pc-linux-gnu
export AR=${TOOLCHAIN}/bin/${CROSS_PREFIX}-ar
export AS=${TOOLCHAIN}/bin/${CROSS_PREFIX}-as
export CC=${TOOLCHAIN}/bin/${CROSS_PREFIX}-gcc
export CXX=${TOOLCHAIN}/bin/${CROSS_PREFIX}-g++
export LD=”${TOOLCHAIN}/bin/${CROSS_PREFIX}-ld”
export LDSHARED="${TOOLCHAIN}/bin/${CROSS_PREFIX}-gcc -shared "
export RANLIB=${TOOLCHAIN}/bin/${CROSS_PREFIX}-ranlib
export CFLAGS="-I${TOOLCHAIN}/include -O3 ${MARCH} -I/opt/include/python2.6/ -I/volume1/mysql-5.5.39-linux2.6-i686/include"
export LDFLAGS="-L${TOOLCHAIN}/lib -L/lib/"
export PKG_CONFIG_PATH="${TOOLCHAIN}/lib/pkgconfig"

Finalmente  procedemos a la instalación:

pip install mysql-python

No hay comentarios: