2016-05-26 7 views
0

Ich frage mich, ob jemand in der Lage war, die nativen Nettypoll-Transporte auf einer ARM-basierten Debian-Distribution erfolgreich zu verwenden? Ich habe die netty-transport-native-epoll-4.1.1.Final-20160526.120605-1.jar-Datei heruntergeladen und in meinen Klassenpfad gestellt. Wenn ich jedoch versuche, meine App auszuführen, erhalte ich die folgende Fehlermeldung:Netty Epoll Verknüpfungsproblem - falsche ELF-Klasse

Java HotSpot(TM) Embedded Client VM warning: You have loaded library /tmp/libnetty-transport-native-epoll2335866969247669919.so 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/libnetty-transport-native-epoll2335866969247669919.so: /tmp/libnetty-transport-native-epoll2335866969247669919.so: 
    wrong ELF class: ELFCLASS64 (Possible cause: architecture word width mismatch) 
    at java.la` 

Ich sah einen Beitrag früher, der mit der Verwendung der reinen Java-Implementierung gesprochen hat und das ist, was ich dachte, dass ich verwendet wurde, aber basierend auf der ELFCLASS64-Nachricht kann ich nur feststellen, dass ich nicht bin.

Ich habe die Anweisungen auf der Netto-native-Transport-Seite gefolgt und haben den Code in Netbeans erfolgreich kompiliert, aber ich bekomme immer noch die gleiche Nachricht. Muss ich auf der ARM-Plattform direkt kompilieren?

Ich würde jede Hilfe/Einblick schätzen, die jeder zur Verfügung stellen kann. Und wenn ich mehr Informationen liefern muss, frage einfach und ich werde antworten.

so vielen Dank im Voraus ...

  • Tim

Antwort

0

Sie müssen nicht unbedingt auf dem ARM-System direkt kompilieren, wenn Sie eine Option in den Compiler finden Sie‘ Verwenden Sie den cross compile nativen Transport, der auf Ihre ARM-Architektur abzielt. Andernfalls müssen Sie es direkt auf dem ARM-System kompilieren oder jemanden finden, der dies bereits getan hat.

0

Ich glaube nicht, dass wir ARM unterstützen. Wir kompilieren nur für x86_64