lunes 28 de diciembre de 2009

No funcionan algunos botones de Eclipse Galileo en Ubuntu 9.10

Parece que hay algún problema con GTK y Eclipse Galileo en Ubuntu 9.10 (Karmic Koala).

Aparentemente funciona correctamente, pero algunos botones dejan de funcionar. Lo primero que he intentado es activar los botones con ENTER y así algunos funcionan. Pero definitivamente algunos desplegables del plugin CVS no funcionan como no los actives con el ratón.

Para solucionarlo solo necesitas crear un fichero de texto (por ej: lanzador.bash) en el directorio donde tengas el ejecutable de eclipse y escribir esto:
#!/bin/bash
export GDK_NATIVE_WINDOWS=1
./eclipse

Después de darle permisos de ejecución y ejecutarlo se ejecutar eclipse y dejarás de tener problemas con los botones.

Etiquetas: , ,

martes 15 de diciembre de 2009

uml2php5

http://uml2php5.zpmag.com/

Una utilidad muy buena para crear diagramas UML con Dia y después generar un fichero PHP.

Parece una tontería, pero cuando tienes que hacer un diseño bastante grande, que te generen la estructura de todas las clases con sus herencias y comentarios en cada procedimiento para que OTRO haga el trabajo de picar el código, no es ninguna tontería.

Además es muy sencilla de instalar, solo tienes que descargar el fichero y seguir las instrucciones que tienes en la web. En pocos minutos tienes tu primera clase en PHP sin abrir ningún IDE PHP.

lunes 14 de diciembre de 2009

Conectar unidad de red a un servidor SAMBA

Una forma útil de utilizar un servidor SAMBA desde un entorno de clientes Windows es conectar como unidad de red los recursos compartidos del servidor SAMBA.

Para hacer esto de forma automática es más cómodo generar un script (.bat) para que conecte las unidades de red en los equipos Windows.

El comando es muy sencillo, solo tendemos que ejecutar: net use \\\ /user:

El comando quedaría así para un servidor con IP 192.168.1.1, el recurso al que queremos conectar nuestra unidad de red se llama "compartido" y nos conectaremos con usuario "administrador" y clave "1234". Por último asignaremos a la unidad la letra "f".
net use f: \\192.168.1.1\compartido 1234 /user:administrador

Recuerda que para ejecutar este comando en un Windows XP, antes tienes que abrir la linea de comandos de Windows y para ello: inicio > Ejecutar > cmd.

jueves 22 de octubre de 2009

Problemas iniciando Enterprise Manager 11g

He estado instalando Oracle DataBase 11g en un Windows XP para hacer pruebas y aprender al más sobre administración y gestión de bases de datos Oracle, pero me encontré con un problema.

La máquina que utilicé para la batería de pruebas estaba configurada como DHCP (ip dinamica). Cuando lo instalé funcionaba correctamente, pero al reiniciar el servidor DHCP me asignó otra IP y Oracle DataBase 11g dejó de funcionar.

Después de mucho investigar, descubrí que el problema venía porque Listener estaba configurado para la IP antigua que tenía asignada. Es decir la IP que tenia la máquina cuando se instaló. La solución a esto es sencilla, simplemente tendrás que volver a configurar Listener y volverá a funcionar todo.

Pero claro, si la máquina que estás utilizando es un portatil que hoy lo utilizas aquí y mañana allí, no es nada cómodo tener que configurar Listener cada vez que quieras utilizar tu Oracle DataBase.

Encontré la solución a este problema, realmente es muy sencilla, simplemente tenemos que crear una tarjeta de red virtual, asiganarle una IP estática fuera de los rango habituales de la redes a las que nos conectemos y configurar Listener para esa dirección IP. Ahora siempre tendremos esa dirección IP asignada y no volveremos a tener problemas para iniciar Listener.

Tengo algunas capturas que os ayudarán a configurar una tarjeta de red virtual en Windows XP.

El primer paso es Inicio > Configuración > Panel de control.



Agregar hardware











Una vez que tenemos agregada la nueva tarjeta de red tendremos que configurarla con una IP estática.















Ahora hay que configurar Listener para que corra sobre la nueva IP. Sin olvidar también configurar tnsnames.ora.



Configuración listener.ora



Configuración tnsnames.ora



Una vez configurado procedemos a reiniciar el servicio Listener para que se inicie con la nueva configuración.











Ahora toca hacer las pruebas y verificar que todo está funcionando correctamente.

Aquí tienes la respuesta correcta de un "tnsping ORCL" o "tnsping 192.168.254.254"





Para configurar el Enterprise Manager utilizaremos "emca -config dbcontrol db", esto nos irá pidiendo información para la correcta configuración. Recuerda escribir el nombre del servicio tal cual lo escribiste en el tnsnames.ora, es decir si está en mayusculas, lo escribes en mayusculas.



Yo ya lo tengo funcionando. Recuerda que todos estos servicios pueden tardar un poco en iniciarse cuando iniciar el sistema. Yo muchos servicios corriendo en este Windows XP y tengo que esperar un poco para que todo funcione correctamente, espera un poco antes de ponerte a modificar ficheros de configuración como un loco. Si pasado un tiempo ves que no funciona ha llegado la hora de buscar el problema.

martes 20 de octubre de 2009

Hola mundo CodeBlocks

Después de mucho intentarlo he conseguido compilar mi primera aplicación en C con CodeBlocks. Mi primer "Hola mundo!".

Como con muchas otras cosas lo apuntaré en mi blog para acordarme el día que tenga que volver a hacer todos estos pasos, porque seguro que se me olvidará y volveré a perder el tiempo intentado compilar de nuevo un proyecto.

Lo primero que tienes que hacer es crear un proyecto nuevo y definir el main de un "hola mundo". Casualmente esta versión de CodeBlocks cuando creas un nuevo proyecto, directamente te crea el "Hola mundo".

El problema llega cuando intentas compilar el proyecto. Yo obtenía "uses an invalid compiler. Skipping...".


Para solucionar esto, entraremos en: Settings> Compiler and debugger...




Se abrirá esta ventana:




Nos vamos a la pestaña de: Toolchain executables





Una vez aquí tenemos que modificar la ruta de: Compiler's installation directory. (La ruta normalmente es la que se puede ver en la imagen "c:\Archivos de programas\CodeBlocks\MinGW")




Una vez modificada la ruta aceptaremos y volveremos compilar nuestra aplicación. Esta vez debería ejecutarse sin problemas.

Etiquetas: , , ,

viernes 16 de octubre de 2009

Problemas con GWT en Eclise (Ubuntu)

Cuando intento lanzar mi proyecto con Eclipse obtento este error en la consola:
** Unable to load Mozilla for hosted mode **
java.lang.UnsatisfiedLinkError: /home/jmruiz/Escritorio/eclipse35/plugins/com.google.gwt.eclipse.sdkbundle.linux_1.7.1.v200909221731/gwt-linux-1.7.1/mozilla-1.7.12/libxpcom.so: libstdc++.so.5: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1778)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1674)
at java.lang.Runtime.load0(Runtime.java:770)
at java.lang.System.load(System.java:1003)
at com.google.gwt.dev.shell.moz.MozillaInstall.load(MozillaInstall.java:190)
at com.google.gwt.dev.BootStrapPlatform.initHostedMode(BootStrapPlatform.java:53)
at com.google.gwt.dev.HostedModeBase.(HostedModeBase.java:362)
at com.google.gwt.dev.SwtHostedModeBase.(SwtHostedModeBase.java:127)
at com.google.gwt.dev.HostedMode.(HostedMode.java:271)
at com.google.gwt.dev.HostedMode.main(HostedMode.java:230)

Para solucionar instalaremos libstdc++5.
$ sudo apt-get install libstdc++5
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Se instalarán los siguientes paquetes NUEVOS:
libstdc++5
0 actualizados, 1 se instalarán, 0 para eliminar y 0 no actualizados.
Necesito descargar 296kB de archivos.
Se utilizarán 872kB de espacio de disco adicional después de esta operación.
Des:1 http://es.archive.ubuntu.com jaunty/universe libstdc++5 1:3.3.6-17ubuntu1 [296kB]
Descargados 296kB en 0s (399kB/s)
Seleccionando el paquete libstdc++5 previamente no seleccionado.
(Leyendo la base de datos ...
227973 ficheros y directorios instalados actualmente.)
Desempaquetando libstdc++5 (de .../libstdc++5_1%3a3.3.6-17ubuntu1_i386.deb) ...
Configurando libstdc++5 (1:3.3.6-17ubuntu1) ...
Procesando disparadores para libc6 ...
ldconfig deferred processing now taking place

Una vez instalado podrás ejecutar la aplicación sin problemas.

http://whatwouldnickdo.com/wordpress/99/unable-to-load-mozilla-for-hosted-mode-gwt-ubuntu-810-linux/

Etiquetas: , ,

martes 22 de septiembre de 2009

VBoxGuestAdditions para Debian

Es muy útil instalar VBoxGuestAdditions (cliente de virtual box para máquinas virtuales) en las máquinas virtuales que tengas corriendo en un servidor de VirtualBox. Así facilitarás la comunicación entre el Kernel de la máquina virtual y el servidor de máquinas virtuales.

Para instalarlo lo primero que tenemos que hacer es comprobar el Kernel que estamos utilizando en la máquina virtualizada. Para ello ejecutamos:
# uname -a
Linux Debian5Nagios 2.6.26-2-686 #1 SMP Thu Mar 26 01:08:11 UTC 2009 i686 GNU/Linux

Una vez sabemos el Kernel que estamos utilizando ejecutaremos el script correspondiente, en nuestro caso:
# ./VBoxLinuxAdditions-x86.run

Es posible que obtengamos el siguiente error:
Verifying archive integrity... All good.
Uncompressing VirtualBox 2.2.2 Guest Additions for Linux installation.................................................................
VirtualBox 2.2.2 Guest Additions installation
Please install the build and header files for your current Linux kernel.
The current kernel version is 2.6.26-2-686
This system does not seem to have support for OpenGL direct rendering.
VirtualBox requires Linux 2.6.27 or later for this. Please see the log
file /var/log/vboxadd-install.log if your guest uses Linux 2.6.27 and you still see this message.
Problems were found which would prevent the Guest Additions from installing.
Please correct these problems and try again.

Esto es porque necesitas las cabeceras del Kernel para poder compilar un modulo, para instalar las cabeceras de nuestro Kernel: (RECUERDA QUE TENDRÁS QUE INSTALAR LAS CABECERAS DEL KERNEL QUE ESTÉS UTILIZANDO)
# aptitude install linux-headers-2.6-686
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Leyendo la información de estado extendido
Inicializando el estado de los paquetes... Hecho
Leyendo las descripciones de las tareas... Hecho
Se instalarán los siguiente paquetes NUEVOS:
cpp-4.1{a} gcc-4.1{a} gcc-4.1-base{a} linux-headers-2.6-686 linux-headers-2.6.26-2-686{a}
linux-headers-2.6.26-2-common{a} linux-kbuild-2.6.26{a}
0 paquetes actualizados, 7 nuevos instalados, 0 para eliminar y 0 sin actualizar.
Necesito descargar 7254kB de ficheros. Después de desempaquetar se usarán 41,3MB.
¿Quiere continuar? [Y/n/?]
Escribiendo información de estado extendido... Hecho
Des:1 http://ftp.rediris.es lenny/main gcc-4.1-base 4.1.2-25 [207kB]
Des:2 http://ftp.rediris.es lenny/main cpp-4.1 4.1.2-25 [2317kB]
Des:3 http://ftp.rediris.es lenny/main gcc-4.1 4.1.2-25 [417kB]
Des:4 http://ftp.rediris.es lenny/main linux-headers-2.6.26-2-common 2.6.26-19 [3718kB]
Des:5 http://ftp.rediris.es lenny/main linux-kbuild-2.6.26 2.6.26-3 [194kB]
Des:6 http://ftp.rediris.es lenny/main linux-headers-2.6.26-2-686 2.6.26-19 [398kB]
Des:7 http://ftp.rediris.es lenny/main linux-headers-2.6-686 2.6.26+17+lenny1 [2474B]
Descargados 7254kB en 10s (699kB/s).
Seleccionando el paquete gcc-4.1-base previamente no seleccionado.
(Leyendo la base de datos ...
29434 ficheros y directorios instalados actualmente.)
Desempaquetando gcc-4.1-base (de .../gcc-4.1-base_4.1.2-25_i386.deb) ...
Seleccionando el paquete cpp-4.1 previamente no seleccionado.
Desempaquetando cpp-4.1 (de .../cpp-4.1_4.1.2-25_i386.deb) ...
Seleccionando el paquete gcc-4.1 previamente no seleccionado.
Desempaquetando gcc-4.1 (de .../gcc-4.1_4.1.2-25_i386.deb) ...
Seleccionando el paquete linux-headers-2.6.26-2-common previamente no seleccionado.
Desempaquetando linux-headers-2.6.26-2-common (de .../linux-headers-2.6.26-2-common_2.6.26-19_i386.deb) ...
Seleccionando el paquete linux-kbuild-2.6.26 previamente no seleccionado.
Desempaquetando linux-kbuild-2.6.26 (de .../linux-kbuild-2.6.26_2.6.26-3_i386.deb) ...
Seleccionando el paquete linux-headers-2.6.26-2-686 previamente no seleccionado.
Desempaquetando linux-headers-2.6.26-2-686 (de .../linux-headers-2.6.26-2-686_2.6.26-19_i386.deb) ...
Seleccionando el paquete linux-headers-2.6-686 previamente no seleccionado.
Desempaquetando linux-headers-2.6-686 (de .../linux-headers-2.6-686_2.6.26+17+lenny1_i386.deb) ...
Procesando disparadores para man-db ...
Configurando gcc-4.1-base (4.1.2-25) ...
Configurando cpp-4.1 (4.1.2-25) ...
Configurando gcc-4.1 (4.1.2-25) ...
Configurando linux-headers-2.6.26-2-common (2.6.26-19) ...
Configurando linux-kbuild-2.6.26 (2.6.26-3) ...
Configurando linux-headers-2.6.26-2-686 (2.6.26-19) ...
Configurando linux-headers-2.6-686 (2.6.26+17+lenny1) ...
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Leyendo la información de estado extendido
Inicializando el estado de los paquetes... Hecho
Escribiendo información de estado extendido... Hecho
Leyendo las descripciones de las tareas... Hecho

Una vez instaladas las cabeceras correspondientes a tu Kernel, no tendrías que tener ningún error al ejecutar:
# ./VBoxLinuxAdditions-x86.run
Verifying archive integrity... All good.
Uncompressing VirtualBox 2.2.2 Guest Additions for Linux installation.......................................................................
VirtualBox 2.2.2 Guest Additions installation
This system does not seem to have support for OpenGL direct rendering.
VirtualBox requires Linux 2.6.27 or later for this. Please see the log
file /var/log/vboxadd-install.log if your guest uses Linux 2.6.27 and you still see this message.
Building the VirtualBox Guest Additions kernel module...
Building the shared folder support kernel module...
Installing the VirtualBox Guest Additions...

Could not find X.org or XFree86 on the guest system. The X Window drivers
will not be installed.

Y después de reiniciar la máquina virtual y ejecutar un "# ps aux", podrás ver un proceso correspondiente al modulo recién compilado.
/usr/sbin/vboxadd-timesync --daemonize

Ahora el Kernel de tu máquina virtual Debian se comunicará más fácilmente con el Kernel de tu máquina servidora de máquinas virtuales.

Etiquetas: , ,