Пакетный файл трассировки моста

root@prateek-desktop:/root/ptbridge-master# java -jar ptbridge.jar
OpenJDK Server VM warning: You have loaded library /tmp/packetsocket5426320610063427559 which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.
Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/packetsocket5426320610063427559: /tmp/packetsocket5426320610063427559: wrong ELF class: ELFCLASS64 (Possible cause: architecture word width mismatch)
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary1(ClassLoader.java:1968)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1893)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1854)
    at java.lang.Runtime.load0(Runtime.java:795)
    at java.lang.System.load(System.java:1062)
    at at.stefl.packetsocket.NativeLibraryLoader.load(NativeLibraryLoader.java:41)
    at at.stefl.packetsocket.EthernetSocket.<clinit>(EthernetSocket.java:78)
    at at.stefl.ptbridge.main.Main.main(Main.java:49)

Может ли кто-нибудь помочь в разрешении этих исключений?

1 ответ

Основная проблема - несоответствие ожидаемых библиотек. Файл ELFCLASS64 предназначен для 64-битных библиотек, а не 32-битных.

Как вы заявили в комментариях, у вас есть 32-битная Ubuntu; это означает, что у вас есть 32-битные библиотеки и вы не можете выполнять 64-битные программы. Вам нужно будет установить и запустить 64-битную Ubuntu, если ваша архитектура поддерживает это, чтобы вы могли иметь правильную версию библиотек, необходимую для запуска Packet Tracer Bridge.

Если ваша система не поддерживает 64-разрядную ОС, то вам нужно будет узнать, есть ли 32-разрядная версия Packet Tracer Bridge, или вам придется заменить компьютер на тот, который поддерживает 64-разрядные операционные системы, или вам придется надо просто не использовать Packet Tracer Bridge.

Другие вопросы по тегам