@evrikom

JNA. Почему не удается загрузить С библиотеку?

делал по примеру с stuf.ro/calling-c-code-from-java-using-jna
если запускать через main класс
java -Djna.library.path=/home/user/1 -Djna.debug_load=true com/mycompany/testjna/HelloWorld

библиотека загружается и функция вызывается.
...
Found library 'ctest' at /home/user/1/libctest.so
Hello from C!

Однако если сделать jar и запустить его :
java -Djna.library.path=/home/user/1 -jar testJNA-1.0-SNAPSHOT-jar-with-dependencies.jar

возникает ошибка:
evrikom@evrikom:~/NetBeansProjects/testJNA/target$ java -Djna.library.path=/home/user/1 -jar testJNA-1.0-SNAPSHOT-jar-with-dependencies.jar 
arch:x86 prefix:linux-x86 libName:c
Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/jna--1364653087/jna7467041216767909949.tmp: /tmp/jna--1364653087/jna7467041216767909949.tmp: сбой отображения сегмента из разделяемого объекта
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
TheDeadOne
@TheDeadOne
Седой и строгий
Проблема в опции noexec монтирования /tmp, не позволяющей ничего выполнять из временного каталога. Нужно либо перемонтировать без неё, либо попробовать запустить виртуальную машину с параметром jna.tmpdir указывающим куда-нибудь в другое место.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
ИП Шпак Виктория Сергеевна Санкт-Петербург
от 90 000 до 150 000 руб.
Payneteasy Москва
от 120 000 руб.
МойСклад Москва
от 120 000 до 160 000 руб.
18 авг. 2018, в 11:06
10000 руб./за проект
18 авг. 2018, в 10:13
500 руб./в час
18 авг. 2018, в 09:13
13000 руб./за проект