nazareno ejemplos descargar java linux jni native

descargar - jni java ejemplos



java.lang.UnsatisfiedLinkError en Linux (2)

¿ -Djava.library.path=/path/to/library ?

EDITAR: Al volver a leer el mensaje de error, me parece que la biblioteca nativa que está cargando está intentando vincular a la versión 3.4.9 de glibc, que aparentemente no está instalada. ¿Puedes verificar qué versión de glibc tienes? ¿Qué distribución de Linux estás ejecutando?

EDIT2: El problema parece estar reducido a libstdc ++. Estoy a punto de darme cuenta, pero este hilo podría ser útil. Sugiere actualizar a gcc 4.2; de los comentarios, pareces tener la versión 4.1.2. Avísame si eso no funciona.

Logré entrar en una máquina Linux para probar la biblioteca HotKey sugerida en esta respuesta.

He compilado el código de muestra y ahora ejecuto el programa y tengo el siguiente mensaje:

[oracle@machine jxgrabkey-0.2.1_i386]$ java -classpath lib/JXGrabKey.jar:Example JXGrabKeyTest Exception in thread "main" **java.lang.UnsatisfiedLinkError:** /home/oracle/javasample/jxgrabkey-0.2.1_i386/lib/libJXGrabKey.so: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9'' not found (required by /home/oracle/javasample/jxgrabkey-0.2.1_i386/lib/libJXGrabKey.so) at java.lang.Runtime._load(libgcj.so.7rh) at java.lang.Runtime.load(libgcj.so.7rh) at java.lang.System.load(libgcj.so.7rh) at JXGrabKeyTest.main(JXGrabKeyTest.java:17)

Sé cómo manejar esto en Windows (simplemente agregando el DLL a la var de env de PATH) pero no estoy tan seguro acerca de Linux.

He leído algo sobre LD_LIBRARY_PATH y algunos otros archivos, pero puedo hacerlo funcionar.

¿Algún consejo?

EDITAR

Después del apoyo de mmyers para identificar el problema y leer este hilo y este otro .

Puedo decir:

Mi sistema es: Linux 2.6.18-53.el5

Mi (s) versión (s) GCC es (son):

gcc-c ++ - 4.1.2-14.el5

gcc-gfortran-4.1.2-14.el5

libgcc-4.1.2-14.el5

gcc-4.1.2-14.el5

El problema es que necesito gcc 4.2.0

Parece que no hay gcc 4.2.0 para mi sistema.

Supongo que tendré que esperar a que llegue o que el autor lo recompile en una versión anterior.

mmyers, muchas gracias por tu ayuda.


Subes, desarrollador de JXGrabKey aquí ...

No sé mucho sobre este error, pero su orientación sobre gcc y / o libstdc ++ debería ser correcta

Personalmente, estoy usando la versión de gcc enviada con Ubuntu 8.10 atm. Siempre me atengo a la última versión enviada.

Versión actual: g ++ (Ubuntu 4.3.2-1ubuntu12) 4.3.2

Los siguientes paquetes libstdc ++ están instalados en mi máquina: http://packages.ubuntu.com/intrepid/libstdc++5 http://packages.ubuntu.com/intrepid/libstdc++6

Espero que esto ayude, si encuentras algo útil, dímelo. :) Tal vez tengo que compilar jxgrabkey con una versión anterior de gcc para las versiones, por lo que es compatible con versiones anteriores. ¿Alguien tiene un sabio consejo? ^^