miércoles, 19 de mayo de 2010

Compilar e Instalar DimDim 4.5 en CentOS 5.5 (x86_64)


DimDim Es una aplicación para reuniones (Web Meeting) o encuentros en un web browser(navegador), provee: video conferencias, pizarrones compartidos, compartir documentos, etc...
En este minitutorial la idea es mostrar como compilar e instalar esta aplicación en un servidor con CentOS de arquitectura x86-64, se preguntarán porque CentOS si siempre hago reseñas a software para linux Debian. Bueno por esto mismo despues de lograr compilar DimDim en un paquete rpm para arquitectura x86-64, lo exportaré a un paquete .deb para ser instalado de una maquina con LINUX DEBIAN con las mismas características (En el siguente POST XD...).

A diferencia de Debian, CentOS (Basado en Redhat) trabaja con un manejador de paquetes llamado YUM, el que funciona de la misma manera que "apt-get" en debian.

Instalación de Compiladores y Librerías Necesarias

# yum install gcc-c++
# yum install gdb

# yum install pcre-devel
# yum install libjpeg-devel
# yum install zlib-devel

# yum install libpng-devel
# yum install python-devel

# yum install zlib*

Instalación de OpenOffice version 3.o

chequea si tienes OpenOffice Instalado (al ingresar el comando te dará la ruta del Office):

# find / -name soffice.bin | grep openoffice | grep program | grep org3

en caso de que no este instalado ejecuta lo sgte:

descarga:
#wget http://mirrors.isc.org/pub/openoffice/stable/3.0.0/OOo_3.0.0_LinuxIntel_install_wJRE_en-US.tar.gz

o

#wget
http://download.services.openoffice.org/files/stable/3.0.0/OOo_3.0.0_LinuxX86-64_install_wJRE_en-US.tar.gz

descomprime:

#tar xvzf
OOo_3.2.0_LinuxX86-64_install_wJRE_en-US.tar.gz

entra al directorio:

#cd OOo_3.2.0_LinuxX86-64_install_wJRE_en-US

entra al directorio RPMS:

#cd RPMS

instala todos los rpm's:

#rpm -ivh *.rpm

Instalación de JAVA version 1.6 (JDK)

descarga:

http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-6u20-linux-x64-rpm.bin?BundledLineItemUUID=u4uJ_hCxa2sAAAEoSZUFObEU&OrderID=emaJ_hCx_voAAAEoOZUFObEU&ProductID=d8tIBe.o6WMAAAEnYDJHqPYe&FileName=/jdk-6u20-linux-x64-rpm.bin

instala:
# chmod 777 jdk-6u17-linux-x64-rpm.bin
# ./jdk-6u17-linux-x64-rpm.bin



Instalación de Librerías Python

NOTA:
para todas estas librerías que se instalarán deberas chequear su instalación de la siguiente manera:

#python2.x

donde x es la version de python variará de 4 a 5 durante la instalación de dimdim
este es el output que deberias obtener al importar la librería, de no ser el caso algo fallo en la instalación de la librería:

Python 2.4.3 (r252:60911, Oct 9 2008, 08:13:08) [GCC 4.1.2 20071124 (Red Hat 4.1.2-42)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>import cherrypy >>>

Cherrypy

descarga:
#wget http://download.cherrypy.org/cherrypy/3.1.0/CherryPy-3.1.0.zip

Instalación:

#unzip CherryPy-3.1.0.zip
#cd CherryPy-3.1.0 and chmod +x *

#python2.4 setup.py install


chequear instalación con NOTA al comienzo.

Flup

descarga:
#wget
http://www.saddi.com/software/flup/dist/flup-1.0.tar.gz


Instalación:

#tar xvzf flup-1.0.tar.gz
#cd flup-1.0 and chmod +x *
#python2.4 ez_setup.py -U setuptools
#python2.4 setup.py install


chequear instalación con NOTA al comienzo.


Pycurl

descarga:
#wget
http://curl.haxx.se/download/curl-7.19.0.tar.gz

Instalación:

#untar it tar xzf curl-7.19.0.tar.gz
#cd curl-7.19.0
#./configure
#make
#make install


Después de haber instalado pycurl debes hacer un softlink con la siguiente sentencia:

#ln -s /usr/local/lib/libcurl.so.4 /usr/lib/libcurl.so.4


chequear instalación con NOTA al comienzo.

Si te falla el chequeo de ésta librería (como a mí) debes editar el archivo ldconf y agregar la ruta que pusiste en el softlink en este archivo, me explico:

1.- edita el archivo ld.so.conf y agrega la linea /usr/local/lib al archivo (que seguramente tendra solamente la linea include ld.so.conf.d/*.conf).

#cd /etc/ #nano ld.so.conf

2.- Sale del editor (ctrl+X) y ejecuta ldconfig.

#ldconfig

3.- Prueba ahora si python importa la librería (>>>import pycurl ).

#python2.4 >>>import pycurl >>>
Esto se debe a que python no ve esta libreria dado que no ve la ruta especificada en las rutas de librerías de sistema, por eso debemos agregar el directorio /usr/local/lib al archivo ld.so.conf y ejecutar ldconfig.

demjson

descarga:

#wget http://deron.meranda.us/python/demjson/dist/demjson-1.3.tar.gz



Instalación:

#tar xzf demjson-1.3.tar.gz
#cd demjson-1.3 and chmod +x *
#python2.4 setup.py install


chequear instalación con NOTA al comienzo.



Instalación de Python2.5

descarga:
#wget http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tgz


Instalación:

#tar xvzf Python-2.5.2.tgz
#cd Python-2.5.2
# ./configure
#make && make install



UFFF...Ahora necesitamos instalar todas las librerias python anteriores en python2.5....


Cherrypy para python2.5


Instalación:

Ve al directorio donde descargaste
CherryPy-3.1.0 . (ayuda: puedes encontrarlo con #find | grep CherryPy-3.1.0)
#cd CherryPy-3.1.0
#python2.5 setup.py install
#rm -rf CherryPy-3.1.0
#rm -rf CherryPy-3.1.0.zip


chequear instalación con NOTA al comienzo de la seccion instalación de librerias python, reemplazando la x por 5 ahora.


Flup para python2.5


Instalación:

Ve al directorio donde descargaste flup
#cd flup-1.0 and chmod +x *
#python2.5 ez_setup.py -U setuptools
#python2.5 setup.py install
#rm -rf flup-1.0
#rm -rf flup-1.0.tar.gz


chequear instalación con NOTA al comienzo de la seccion instalación de librerias python, reemplazando la x por 5 ahora.

demjson
para python2.5

Instalación:

Ve al directorio donde descargaste demjson
#cd demjson-1.3 and chmod +x *
#python2.5 setup.py install
#rm -rf demjson-1.3
#rm -rf demjson-1.3.tar.gz

chequear instalación con NOTA al comienzo de la seccion instalación de librerias python, reemplazando la x por 5 ahora.

pycurl para python2.5


Instalación:

Ve al directorio donde descargaste
pycurl
#cd curl-7.19.0
#easy_install-2.5 pycurl


chequear instalación con NOTA al comienzo de la seccion instalación de librerias python, reemplazando la x por 5 ahora.



Instalación de FCGI

#wget http://www.fastcgi.com/dist/fcgi.tar.gz #tar xvzf fcgi-2.4.0.tar.gz #cd fcgi-2.4.0 # ./configure
# make
# make install

librerias instaladas en:
/usr/local/lib

Instalación de Corona

wget http://prdownloads.sourceforge.net/corona/corona-1.0.2.tar.gz
#tar xvzf corona-1.0.2.tar.gz #cd corona-1.0.2 # ./configure
# make
# make install

librerias instaladas en:
/usr/local/lib

Instalación de Ant

en la raiz
#cd /usr/local

#mkdir ant
#cd ant

#wget http://apache.freeby.pctools.cl/ant/binaries/apache-ant-1.8.1-bin.zip
# unzip apache-ant-1.8.0-bin.zip

#export ANT_HOME=/usr/local/ant/apache-ant-1.8.0


Preparación de Directorios y Scripts para Compilar Sources

Descargar Sources:

#wget http://sourceforge.net/settings/mirror_choices?projectname=dimdim&filename=Dimdim%20v4.5%20Release/Dimdim%20v4.5%20Sourcecode/Dimdim_v4.5_SourceCode.zip

#mkdir /usr/local/webinar
#mv Dimdim_v4.5_SourceCode.zip /usr/local/webinar

#cd /usr/local/webinar/
#unzip
Dimdim_v4.5_SourceCode.zip

Crea directorio:

# mkdir usr/local/Dependencies/Reflector/corona_fcgi_libs

y copia las librerias a este directorio.

# cp usr/local/lib/*so* /usr/local/Dependencies/Reflector/corona_fcgi_libs

Crea un directorio temporal "tmp" como se describe(build no lo crea!)

# mkdir /usr/local/webinar/v4.1/WebApps/ServerII/tmp

# cd /usr/local/webinar/v4.1/FCGIApps/Reflector

#nano compile_all.sh

y Especifíca la ruta de corona y fcgi como (modificar lineas al archivo compile_all.sh):

# export FCGI_DIR=/usr/local/lib
# export CORONA_DIR=/usr/local/lib

Guarda los cambios y sal del editor (crtl+O - ctrl+X).

Haz una estructura de directorios como la siguente (mkdir)

/usr/local/webinar/
—–v4.1
———-Dependencies
—————Reflector
——————-corona_fcgi_libs

Ahora
# cp /usr/local/lib/*so* /usr/local/webinar/v4.1/Dependencies/Reflector/corona_fcgi_libs/

Intenta Compilar el script

# cd /usr/local/webinar/v4.1/Product/Build/Scripts/SF_RPM_Script/
# ant -f Dimdim_SF_32_v4.5_build.xml build

Si todo fue bien deberias encontrar el RPM para instalar dimdim en el siguiente directorio

#cd /usr/src/redhat/RPMS/x86_64

Antes de instalar el RPM te recomiendo que sigas las siguientes sugerencias:

NOTA:
remover carpeta

/usr/local/webinar/BUILD files

Evitar el chequeo de sistema operetivo:

Dimdim-4.5 requiere CentOS 5.2 … si quieres instalarlo en una version superior de CentOSif haz

lo siguiente.


edita el archivo issue en /etc/

#nano /etc/issue

reemplaza la version de CentOS que poseas por la 5.2

ej: CentOS release 5.5 (Final) a CentOS release 5.2 (Final)

FINALMENTE Ejecuta el RPM

#cd /usr/src/redhat/RPMS/x86_64/
#rpm -ivh dimdim-4.5-1.x86_64.rpm

Detener Arrancar dimdim

#startDimdim
#stopDimdim


Listo

prueba: http://localhost(ip servidor)/dimdim

juegue......

8 comentarios:

  1. Existe un problema que surge al tratar de compartir archivos pdf, ppt y pptx. Esto se soluciona de la siguiente manera:

    1.- dimdim solo funciona con la version 3.0.0 de openoffice.org, por lo que si posees otra versión deberás desinstalarla y instalar la siguiente:

    http://archive.services.openoffice.org/pub/openoffice-archive/stable/3.0.0/

    eliges la arquitectura que te correspona porsupuesto.

    2.- instrucciones de instalación:

    http://download.openoffice.org/common/instructions.html#linux

    eso.....

    ResponderEliminar
  2. hombre una pregunta...cuando intento instalar dimdim con el rpm q obtenemos de todo este proceso obtengo esto

    rpm -ivh dimdim-4.5-1.x86_64.rpm
    Preparando... ########################################### [100%]
    Checking preinstall checks
    CentOS release 5.2 (Final)
    Found previous version of dimdim, Please remove any previous version of Dimdim
    Exit Status....
    error: %pre(dimdim-4.5-1.x86_64) scriptlet failed, exit status 1
    error: install: scriptlet %pre fallido (2), omitiendo dimdim-4.5-1

    ResponderEliminar
  3. no entiendo el problema si el sistema esta virgen y lo primero que estoy haciendo es instalar el dimdim

    agradeceria pronta respuesta

    ResponderEliminar
  4. Es posible que la version de centOS que utilizas venga con una version preinstalada de Dimdim.

    Lo otro, editaste el archivo issue en /etc/ reemplazando tu version de CentoOS??????????

    ResponderEliminar
  5. si no era eso trata de desinstalar esa version de dimdim que te molesta con el comando>

    #rpm -e dimdim

    ResponderEliminar
  6. ESO LO INTENTE Y NADA

    Y ESTOY TRATANDO DE INSTALARLO DE NUEVO EN UN CENTOS 5.5 PERO AHORA DE 32.BITS Y NADA

    ResponderEliminar
  7. si estas tratando de hecharlo a andar en una maquina X86 es mejor que descargues el rpm precompilado desde sourceforge...

    ResponderEliminar
  8. otra vez soy yo.... ya lo logre instalar en uno de 32 bits ahora estoy intentando en uno de 64 bits y no he encontrado el rpm para 64 bits

    ResponderEliminar