[Previo por Fecha] [Siguiente por Fecha] [Previo por Hilo] [Siguiente por Hilo]
[Hilos de Discusión] [Fecha] [Tema] [Autor]Advertencia: Esto me funciono a mi en mi computadora. No puedo asegurar que funcione en otro lugar. No hay soporte tecnico. Usenlo bajo su propio riesgo. Hagan respaldos. Antecedente: StarOffice (http://www.stardivision.com/) es un software que permite crear archivos tipo Microsoft Office, tales como documentos con formato, presentaciones, hojas de calculo, entre otras. La ultima version de StarOffice, 5.01, esta disponible para Linux (procesador x86) y es gratuita para uso personal. Problema: StarOffice solamente funciona para RedHat 5.2, ya que utiliza la libreria de glibc version 2.0.7. Por la forma en que fue creado dicho programa, no es compatible con la version de glibc 2.1 que utiliza la distribucion RedHat 6.0, y por el momento, no hay una solucion por parte de StarDivision al respecto. Por lo cual, al tratar de iniciar StarOffice marca errores de librerias y simbolos no encontrados, y no ejecuta nada. Solucion: 1. Yo empece con StarOffice PREVIAMENTE INSTALADO en RedHat 5.2. Realice la actualizacion de la distribucion de Linux a 6.0, y dejo de funcionar. Supongo que se puede aplicar la misma solucion al guion de instalacion, pero no lo he probado. 2. Instale los siguientes RPMS de la distribucion de RedHat 6.0 compat-glibc-5.2-2.0.7.1.i386.rpm compat-libs-5.2-1.i386.rpm Estos RPMs instalan librerias para ejecutar programas creados para RedHat 5.2 que no funcionan en la version 6.0 3. En mi caso, instale StarOffice en /usr/Office50. Generalmente se instala en /opt/Office50, pero esto no debe influir con las modificaciones hechas. A continuacion incluyo mi archivo modificado /usr/Office50/bin/soffice --- inicio archivo --- #!/bin/sh # # StarOffice startup script # (c) 1997,1998 Star Division Corp. #STAR_PROFILE_LOCKING_DISABLED=1 #export STAR_PROFILE_LOCKING_DISABLED sd_cwd=`pwd` # locate StarOffice installation directory and binary name sd_inst=`ls -l $0 | sed 's/.* //g'` if [ "X$sd_inst" = "Xsoffice" ] ; then sd_inst=$0 fi cd `dirname $sd_inst`/.. sd_binary=`basename $0`".bin" sd_inst=`pwd` # change back directory cd "$sd_cwd" sd_fonts=$sd_inst/fonts sd_platform=`uname -s` # set java environment variables THREADS_TYPE=native_threads # set search path for shared libraries case $sd_platform in SunOS) sd_arch=`uname -p` JAVA_HOME=$sd_inst/jre1.1.6 CLASSPATH=$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/i18n.jar CLASSPATH=$JAVA_HOME/classes:$JAVA_HOME/lib/classes.zip:$CLASSPATH sd_jthr=$JAVA_HOME/lib/$sd_arch/$THREADS_TYPE LD_LIBRARY_PATH=$sd_inst/lib:/usr/openwin/lib:/usr/dt/lib:$sd_jthr:$LD_LIBRARY_PATH export LD_LIBRARY_PATH ;; AIX) LIBPATH=$sd_inst/lib:$LIBPATH export LIBPATH ;; HP-UX) SHLIB_PATH=$sd_inst/lib:/usr/openwin/lib:$SHLIB_PATH export SHLIB_PATH ;; IRIX) LD_LIBRARYN32_PATH=:$sd_inst/lib:$LD_LIBRARYN32_PATH export LD_LIBRARYN32_PATH ;; Linux) # # To enable java please uncomment the following lines and # customize the settings for JAVA_HOME (i.e. JAVA_HOME must # point to your local java installation) # # sd_arch=`uname -m` # JAVA_HOME=/usr/jdk117_v1a # CLASSPATH=$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/i18n.jar # CLASSPATH=$JAVA_HOME/lib/classes.zip:$CLASSPATH # sd_jthr=$JAVA_HOME/lib/$sd_arch/$THREADS_TYPE # LD_LIBRARY_PATH=$sd_jthr:$LD_LIBRARY_PATH # # export JAVA_COMPILER=tya # LD_LIBRARY_PATH=/usr/i386-glibc20-linux/lib:$sd_inst/lib:$sd_jthr:$LD_LIBRARY_PATH export LD_LIBRARY_PATH ;; *) LD_LIBRARY_PATH=$sd_inst/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH ;; esac # misc. environment variables SAL_FONTPATH=$sd_fonts/type1:$sd_fonts/75dpi XPPATH=$sd_inst/xp3 unset XENVIRONMENT export THREADS_TYPE JAVA_HOME CLASSPATH SAL_FONTPATH XPPATH # execute soffice binary # there is a bug in solaris sh that prevents the use of "$@" # because it cannot cope with spaces in directory names exec /usr/i386-glibc20-linux/lib/ld-linux.so.2 $sd_inst/bin/$sd_binary "$1" "$2" "$3" "$4" "$5" "$6" "$7" "$8" "$9" --- fin archivo --- Si lo comparan contra el archivo original, veran que modifique en la parte de Linux la siguiente linea: LD_LIBRARY_PATH=/usr/i386-glibc20-linux/lib:$sd_inst/lib:$sd_jthr:$LD_LIBRARY_PATH Agregue la ruta de las librerias de compatibilidad de RedHat 5.2 a las librerias que carga StarOffice. Tambien modifique la ultima linea: exec /usr/i386-glibc20-linux/lib/ld-linux.so.2 $sd_inst/bin/$sd_binary "$1" "$2" "$3" "$4" "$5" "$6" "$7" "$8" "$9" Al colocar ld-linux.so.2 forzo a que sean ejecutadas las librerias de compatibilidad en lugar de las librerias de todo el sistema (que se encuentran descritas en el archivo /etc/ld.so.conf) Problemas: No lo he probado extensivamente. Al inicio, presenta un error diciendo que no encuentra algun filtro. Se pueden realizar las operaciones normales de crear archivos, modificarlos y guardarlos, mas no se puede imprimir. Espero que esto les sirva de algo. Comentarios por favor de forma personal a cfuga en itam mx. Los flamazos a /dev/null. Saludos. -- (o- Cristian Othon Martinez Vera <cfuga en itam mx> Pulchrum est paucorum //\ http://eniac.rhon.itam.mx/~cfuga/ hominum. v_/_