Pessoal, eu estou tendo problemas para acessar uma biblioteca no Linux.
Aqui no trabalho tenho uma biblioteca libdisptec55.so que trabalha com display de teclado Gertec e eu preciso acessar os métodos dela em Java. Eu fiz um exemplo em C que utiliza as funções da biblioteca e este deu certo, mas quando eu faço no Java, dá esse erro: Exception in thread “main” java.lang.UnsatisfiedLinkError: TestaTEC.abrirConexao()V
at TestaTEC.abrirConexao(Native Method)
at TestaTEC.main(TestaTEC.java:14)
Aí eu criei um header disptec55.h:
#include <stdio.h>
#include <stdlib.h>
void abrirConexao();
void fecharConexao();
int displayString(char *str);
int displayCaractere(char chr);
int posicionaCursor(int c, int l);
int limpaDisplay();
int limpaLinha(int l);
O meu exemplo em C é este:
#include "disptec55.h"
int main(int argc, char **argv){
abrirConexao();
return 0;
}
E o meu exemplo em Java é este:
public class TestaTEC{
public native void abrirConexao();
public native void fecharConexao();
public native int displayString(String str);
public native int displayCaractere(char chr);
public native int posicionaCursor(int c, int l);
public native int limpaDisplay();
public native int limpaLinha(int l);
static{
System.loadLibrary("disptec55");
}
public static void main(String... args){
TestaTEC t = new TestaTEC();
t.abrirConexao();
}
}
O que posso estar fazendo errado? A biblioteca está em /usr/lib e jre/lib/i386
Se puderem me ajudar, muito obrigado!