Tutorial de Java, VTK y NetBeans
Hace como una semana estuve tratando de compilar VTK con Java Wrapped a ON
en mi Ubuntu 7.04 Feisty Fawn, use dos tutoriales como guia:
http://www.duke.edu/~iwd/howto/VTK-Linux-Java_HOWTO.html
http://www.visualgenomics.ca/xdong/vtk/vtk4.4.2/compile.html
No me salio a la primera porque tenia problemas con el LD_LIBRARY_PATH ... aun no se porque, pero bueno al final todo resulto bien
Las versiones que utilice fueron:
CMake 2.4.6 (Utilice el Gestor de Paquetes Synaptic para instalarlo)
VTK 4.2.2 http://www.vtk.org/files/release/4.2/moved_to_sourceforge/
VTKData-4.2.tar.gz
Al comienzo:
sudo mv /home/jimmy/Instaladores/VTK-4.2.2.tar.gz /usr/
sudo tar -xzvf VTK-4.2.2.tar.gz
sudo mv VTK-4.2.2/ vtk
cd vtk/
sudo ccmake ./
BUILD_SHARED_LIBS=ON
VTK_WRAP_JAVA=ON
... CMakeCache.txt
c
g
make

Como dicen si eres afortunado habrá creado el vtk.jar, pero yo no fui afortunado asi que:
cd java/
sudo mkdir classes/
sudo javac -d classes/ vtk/*.java
cd classes/
sudo jar cvf vtk.jar vtk/
sudo jar i vtk.jar
sudo cp vtk.jar /usr/vtk/bin/
Luego:
export LD_LIBRARY_PATH=/usr/vtk/bin
LD_LIBRARY_PATH
Probé de distintas maneras, pero nada -.-! ... y al querer ejecutar los ejemplos:
cd Examples/Tutorial/Step1/Java/
javac -classpath /usr/vtk/bin/vtk.jar Cone.java
java -classpath /usr/vtk/bin/vtk.jar:. Cone
Me salia:
Exception in thread "main" java.lang.UnsatisfiedLinkError: libvtkCommonJava.so: libvtkCommon.so: 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:1751)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1030)
at Cone.(Cone.java:20)
Y luego que solucione eso:
Exception in thread "main" java.lang.UnsatisfiedLinkError: libvtkRenderingJava.so: libmawt.so: 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:1751)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1030)
at Cone.(Cone.java:25)
Despues de intentar todo lo que se me ocurria, en el código del Cone.java agregue:
System.out.println(System.getProperty("java.library.path"));
El resultado:
/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/client: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386: /usr/java/packages/lib/i386:/lib:/usr/lib
Por último la solución temporal que le di fue:
sudo cp /usr/vtk/bin/* /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/client/
1er problema solucionado
sudo cp /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/motif21/libmawt.so /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/client/
2do problema solucionado

Ahora volver a probar el ejemplo:

OK ahora a usarlo con NetBeans:
Herramientas (Tools) -> Administrador de Librerias (Library Manager)
Nueva Librería
* Nombre de la Librería: VTK
* Tipo de la Librería: Librería de Clases
Agregar Archivo JAR/Carpeta (Buscamos el vtk.jar)

Ahora en Proyecto, en el menu de Bibliotecas
* Agregar Biblioteca
Ahi seleccionamos VTK

Ya solo queda probar el Ejemplo:

... y a empezar con el proyecto de fin de curso
http://www.duke.edu/~iwd/howto/VTK-Linux-Java_HOWTO.html
http://www.visualgenomics.ca/xdong/vtk/vtk4.4.2/compile.html
No me salio a la primera porque tenia problemas con el LD_LIBRARY_PATH ... aun no se porque, pero bueno al final todo resulto bien
Las versiones que utilice fueron:
CMake 2.4.6 (Utilice el Gestor de Paquetes Synaptic para instalarlo)
VTK 4.2.2 http://www.vtk.org/files/release/4.2/moved_to_sourceforge/
VTKData-4.2.tar.gz
Al comienzo:
sudo mv /home/jimmy/Instaladores/VTK-4.2.2.tar.gz /usr/
sudo tar -xzvf VTK-4.2.2.tar.gz
sudo mv VTK-4.2.2/ vtk
cd vtk/
sudo ccmake ./
BUILD_SHARED_LIBS=ON
VTK_WRAP_JAVA=ON
... CMakeCache.txt
c
g
make

Como dicen si eres afortunado habrá creado el vtk.jar, pero yo no fui afortunado asi que:
cd java/
sudo mkdir classes/
sudo javac -d classes/ vtk/*.java
cd classes/
sudo jar cvf vtk.jar vtk/
sudo jar i vtk.jar
sudo cp vtk.jar /usr/vtk/bin/
Luego:
export LD_LIBRARY_PATH=/usr/vtk/bin
Probé de distintas maneras, pero nada -.-! ... y al querer ejecutar los ejemplos:
cd Examples/Tutorial/Step1/Java/
javac -classpath /usr/vtk/bin/vtk.jar Cone.java
java -classpath /usr/vtk/bin/vtk.jar:. Cone
Me salia:
Exception in thread "main" java.lang.UnsatisfiedLinkError: libvtkCommonJava.so: libvtkCommon.so: 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:1751)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1030)
at Cone.
Y luego que solucione eso:
Exception in thread "main" java.lang.UnsatisfiedLinkError: libvtkRenderingJava.so: libmawt.so: 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:1751)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1030)
at Cone.
Despues de intentar todo lo que se me ocurria, en el código del Cone.java agregue:
System.out.println(System.getProperty("java.library.path"));
El resultado:
/usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/client: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386: /usr/lib/jvm/java-6-sun-1.6.0.00/jre/../lib/i386: /usr/java/packages/lib/i386:/lib:/usr/lib
Por último la solución temporal que le di fue:
sudo cp /usr/vtk/bin/* /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/client/
1er problema solucionado
sudo cp /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/motif21/libmawt.so /usr/lib/jvm/java-6-sun-1.6.0.00/jre/lib/i386/client/
2do problema solucionado
Ahora volver a probar el ejemplo:

OK ahora a usarlo con NetBeans:
Herramientas (Tools) -> Administrador de Librerias (Library Manager)
Nueva Librería
* Nombre de la Librería: VTK
* Tipo de la Librería: Librería de Clases
Agregar Archivo JAR/Carpeta (Buscamos el vtk.jar)

Ahora en Proyecto, en el menu de Bibliotecas
* Agregar Biblioteca
Ahi seleccionamos VTK

Ya solo queda probar el Ejemplo:

- Jorge Luis Hernandez Cruz (Cuba )
- 2008/02/03 12:52
si lo tengo cunado puse whereis gcc
gcc: /usr/bin/gcc /usr/lib/gcc /usr/X11R6/bin/gcc /usr/bin/X11/gcc /usr/share/man/man1/gcc.1.gz
pero a mi cuando compilo con el ccmake ./ no me sale
BUILD_SHARED_LIBS=ON
VTK_WRAP_JAVA=ON
... CMakeCache.txt
que a ti si te sale que puede ser?
gcc: /usr/bin/gcc /usr/lib/gcc /usr/X11R6/bin/gcc /usr/bin/X11/gcc /usr/share/man/man1/gcc.1.gz
pero a mi cuando compilo con el ccmake ./ no me sale
BUILD_SHARED_LIBS=ON
VTK_WRAP_JAVA=ON
... CMakeCache.txt
que a ti si te sale que puede ser?
- Jorge Luis Hernandez Cruz (Cuba )
- 2008/02/03 14:55
lo que parece que no tengo instalado es el cxx para compilar c que puedo intalar para que esto pinche el o tra cosa
ccache?
ccache?
- Jimmy (Perú )
- 2008/02/04 04:27
Q tal un: whereis g++
tambien debes tener la libreria Gl que la instala junto con el Qt designer
Eso de:
BUILD_SHARED_LIBS=ON
VTK_WRAP_JAVA=ON
... CMakeCache.txt ... que yo puse, son algunas de las opciones que debes configurar, pero en si te salen muchas más opciones
tambien debes tener la libreria Gl que la instala junto con el Qt designer
Eso de:
BUILD_SHARED_LIBS=ON
VTK_WRAP_JAVA=ON
... CMakeCache.txt ... que yo puse, son algunas de las opciones que debes configurar, pero en si te salen muchas más opciones
- Jorge Luis Hernandez Cruz (Cuba )
- 2008/02/04 19:34
amigo todo va de lo mejor, pero ahora me esta pidiendo las librerias OPENGL que es lo que tengo que instalar para remediar este error.
aqui te lo pongo:
CMake Error: This project requires some variables to be set,
and cmake can not find them.
Please set the following variables:
OPENGL_INCLUDE_DIR (ADVANCED)
saludos
aqui te lo pongo:
CMake Error: This project requires some variables to be set,
and cmake can not find them.
Please set the following variables:
OPENGL_INCLUDE_DIR (ADVANCED)
saludos
- Jimmy (Perú )
- 2008/02/04 23:32
En el Synaptic busca gl.h recuerdo que era, o en todo caso instala con el Synaptic el Qt Designer, y ahi viene la gl.h y habia otra libreria que no recuerdo el nombre.
- Jimmy (Perú )
- 2008/02/04 23:38
Instalando el Qt Designer insalará las librerías que necesitas, ya solo te quedaria revisar en el cmake el path de esas librerias.
- Jorge Luis Hernandez Cruz (Cuba )
- 2008/02/05 22:14
ya no me da ningun error ahora el problema es que no construye y mi CMakecache tengo opciones que en el tuyo no aparecen y en el tuyo hay cosas que en el mi no aparecen la jvm que utiliso el java-1.5.5-sun
saludos
saludos
- Jorge Luis Hernandez Cruz (Cuba )
- 2008/02/05 22:21
un problema que detecte es que los valores en el compilador de g no me pone los otros valore como -g y los otros
- Jorge Luis Hernandez Cruz (Cuba )
- 2008/02/05 22:46
perdona por haber mandado el mismo comentario el problema fue que se ma cayo lared y parece que al actualizar fue que los mando, el problema que detecte es en la parte de el compilador de c que no me completa los otros campos como son el -g, el -Os -DNDEBUG y los demas de lo tro parece estar bien no me da ningun error pero no contruye nada.







CMake Error: The C compiler "/usr/bin/gcc" is not able to compile a simple
test program.
CMake Error: Could not find compiler set in environment variable CXX:
CMAKE_CXX_COMPILER-NOTFOUND.
que debo hacer para poder compilar necesito ayuda urgente
gracias