Home › Foren › Support für jAnrufmonitor 5.0 (Linux) › Support für jAnrufmonitor 5.0 (Linux, Version für CAPI-fähige Endgeräte) › Ubuntu 10.04 UnsatisfiedLinkError nRegister
- Dieses Thema ist leer.
-
AutorBeiträge
-
4. Januar 2011 um 12:08 #22755
Hallo Michael,
@Bitmitch wrote:
„de.powerisdnmonitor.capi.PIMCapi.nRegister“
kommt doch aus
de_janrufmonitor_capi_PIMCapi.c
ODER?ja, das ist korrekt.
@Bitmitch wrote:
Passt evtl. das C-Code-Kompilat nicht zum Java-Code, denn ich verstehe die Fehlermeldung
Exception in thread "JAM-CapiMonitorNotifier-Thread-(deamon)" java.lang.UnsatisfiedLinkError: de.powerisdnmonitor.capi.PIMCapi.nRegister(IIII[I)I
so, dass JAVA den Einsprungpunkt in den C-Code nicht findet … oder liege ich da falsch?
Nein, UnsatisfiedLinkException wird in der Nativen Implementierung verursacht und an Java propagiert. Die libpimcapi.so benötigt libcapi.3.0.4.so, wenn diese nicht gefunden wird, dann wird diese Exception geworfen.
Viele Grüße
Thilo4. Januar 2011 um 15:05 #22756OK, das würde das Einsprungproblem in die CAPI-Prozeduren erklären, aber nicht, warum ich auch ein
java.lang.UnsatisfiedLinkError: de.powerisdnmonitor.capi.PIMCapi.init()Vbekomme.
Und find sagt mir zu dem Thema:
find / -name libcapi*
/usr/lib/libcapi20.so.2
/usr/lib/libcapi20.so.2.0.10
/usr/lib/libcapi20.so.3.0.4
/usr/lib/libcapi20.so
/usr/lib/libcapi20.so.3ääähhhhh …. *kopfkratz* sollte ich mal einen symlink auf die libcapi20.so.3.0.4 basteln, und in das jam Verzeichnis legen?
Der experimentierfreudige, weil urlaubend,
Michael.
4. Januar 2011 um 19:40 #22757Hallo Michael,
was mir da einfällt. Werden die Libs auf deinem Rechner auch unter /usr/lib/ gesucht. Ich frage nämlich nur nach libcapi20.so. Die Auflösung dieser Lib muss dann übers OS funktionieren.
Viele Grüße
Thilo5. Januar 2011 um 10:41 #22758Hallo Thilo!
/etc/ld.so.conf habe ich auf
usr/X11R6/lib/Xaw3d
/usr/X11R6/lib
/usr/lib/Xaw3d
/usr/i386-suse-linux/lib
/usr/local/lib
/opt/kde3/lib
/usr/lib
include /etc/ld.so.conf.d/*.conf
geändert, und ldconf aufgerufen … kein Erfolg, warum auch immer, wobei ich mal /usr/lib als Eintrag hinzugefügt habe.
Ich bekomme immer noch denselben Aufruffehler, die CAPIs sind allerdings im cache:
ldconfig -p | grep capi
libcapi20.so.3 (libc6) => /usr/lib/libcapi20.so.3
libcapi20.so.2 (libc6) => /usr/lib/libcapi20.so.2
libcapi20.so (libc6) => /usr/lib/libcapi20.so
So langsam denke ich allerdings, dass wir einem Phantom nachjagen … mich irritiert immer noch, dass „java.lang.UnsatisfiedLinkError“ immer diejenige Datei/DLL/.so als fehlerhaft anzeigen soll, welche nicht gefunden wird, und das allererste Problem taucht ja schon auf, wenn die Zeile
main - de.powerisdnmonitor.capi.PIMCapi. - de.powerisdnmonitor.capi.PIMCapi.init()V ]
java.lang.UnsatisfiedLinkError: de.powerisdnmonitor.capi.PIMCapi.init()Verscheint, also die leere Funktion init() aufgerufen wird, welche zu diesem Zeitpunkt noch keinen Zugriff auf die CAPI veranstaltet.
Ich habe dann mal aus Jux die libpimcapi.so nach /usr/lib kopiert, es könnte ja ein Abhängigkeitsproblem sein, hilft aber auch nicht.
Es scheint was grundsätzliches zu sein, und da SuSE 11.1 nicht wirklich eine sooo tolle KDE Implementation hat, gehe ich wieder rauf auf 11.3, die KDE-Tools sind einfach „hübscher“ 😀
Michael.
Ein EDIT hinterher geschoben:
Ich habe noch einen alten „PIM“ gefunden, der läuft auch nicht!! 👿5. Januar 2011 um 13:01 #22759Hallo Michael,
ich habe jetzt nochmal ein 32-bit Kompilat der libpimcapi.so unter Ubuntu erstellt. Versuch mal, ob es mit dieser klappt.
[attachment=0:rtsfc5z1]libpimcapi.so.gz[/attachment:rtsfc5z1]
Lass mich wissen, was jetzt „anders“ ist, falls es nicht funktioniert.
Viele Grüße
Thilo6. Januar 2011 um 9:33 #22760Hallo Thilo,
folgendes passiert:
the-server:/usr/local/jam # ./jam.sh &
[1] 26557
the-server:/usr/local/jam # java: symbol lookup error: /usr/lib/capi/lib_capi_mod_std.so: undefined symbol: processMessageIch habe die aktuelle jam-0.log mal dran gehängt, sieht irgendwie ‚anders‘ aus als vorher, allerdings scheinen jetzt Zugriffe auf die CAPI ansatzweise erkannbar zu sein.
Gruß,
Michael.
6. Januar 2011 um 9:56 #22761Hallo Michael,
ok, die Registrierung an der CAPI geht durch. Wie sieht es bei Anrufen aus. Kommt da ein Signal an? Die processMessage ist nur eine Warning und noch nicht „weltbewegend“ schlimm. DIe Frage ist eben, ob die Anrufe durchkommen.
Viele Grüße
Thilo7. Januar 2011 um 16:23 #22762Hi Thilo!
Ich hatte gestern meinen Server gecrashed … OpenSuSE 11.3 und X11 sind keine Freunde mehr, seit es kein sax2 mehr gibt 😈
Ich bin eben aus dem Büro gekommen und werde mal sehen, ob ich heute noch was gebacken bekomme.
Eine von vielen Baustellen … dazuko killt z.B. meine Filesysteme, wenn ich eine AVIRA-Serverversion under SuSE 11.2 einspiele, hat mich den ganzen Tag beschäftigt, eine Baustelle jagt die andere.Michael.
7. Januar 2011 um 18:51 #22763Anonym
N’Abend Thilo,
@thilo.brandt wrote:
Hallo Michael,
ich habe jetzt nochmal ein 32-bit Kompilat der libpimcapi.so unter Ubuntu erstellt. Versuch mal, ob es mit dieser klappt.
[attachment=0:lkccoyyx]libpimcapi.so.gz[/attachment:lkccoyyx]
Lass mich wissen, was jetzt „anders“ ist, falls es nicht funktioniert.
Viele Grüße
ThiloIch hatte unter Ubuntu 10.04 32-bit auch nach dem letzten JAM-Update das Problem wie Michael, daß die Capi nicht richtig gefunden wurde, zumindest dachte ich das. Letztlich war es eine Verkettung:
a) Update des Kernels unter Ubuntu auf 2.6.31-27
b) Neukompilieren/-installieren des fcpci-Moduls für den neuen Kernel schlug unbemerkt fehl, daß keine Anrufe angezeigt und gemailt wurden fiel nur wegen Urlaubsabwesenheit nicht auf…
c) Anschließend (nach dem Urlaub, immer noch im Glauben, läuft ja alles) das Update vom JAM auf 5.0.28, keine Anrufe mehr, fehlerhafte Anzeige der CAPI-Informationen im JAM
d) Korrektes Neukompilieren und -installieren des fcpci-Moduls (capiinfo gibt endlich korrekte Infos aus)
e) Immer noch das gleiche Problem im JAM: Keine korrekte Capi-Information, entsprechende Fehlermeldungen beim Start in der screen-Session
f) Nach Einkopieren der von Dir neu kompilierten libpimcapi.so läuft jetzt endlich alles und ich bin nicht mehr blind…Wie gesagt: Bei mir nicht mit SuSE sondern mit Ubuntu! Mir scheint also, der Fehler liegt nicht nur im Linux…
Gruß
Dirk
7. Januar 2011 um 19:31 #22764Hallo Dirk,
danke für das Feedback. Also genau sagen, woran es nun letztendlich lag, kann ich leider nicht. Fakt ist, dass die neukompilierte Lib nun unter Ubuntu und Debian ohne Probleme läuft. Ich werde sie ins nächste Udpate Anfang Februar reinnehmen.
Viele Grüße
Thilo8. Januar 2011 um 11:08 #22765Moin,
mein CAPI startet unter 11.3 mal wieder nicht, muss wohl wieder allen möglichen Kram blacklisten.
So langsam aber sicher denke ich dass es Zeit wird, die Distribution zu wechseln.
Die OpenSuSE 11.3 ist die mieseste Distri von SuSE seit Jahren, kein SAX2 mehr, händisches manipulieren der X11 Parameter, seit 11.0 klappt CAPI nicht mehr richtig, und die Developer haben, nach deren Äußerungen in den Foren, auch nicht mehr richtig Bock.
Schade.
Ich melde mich sofort wieder, wenn endlich die CAPI-Treiber erkannt und genutzt werden.
EDIT: MELD!
So, die CAPI lässt sich laden, nachdem ich in /etc/modprobe.d/50-blacklist.conf die Module-Config geändert habe:
# geht nicht unter 11.3, also blacklisten:
blacklist avmfritz
blacklist mISDNipac
blacklist mISDN_core
# darf nicht auf blacklist stehen!!
#blacklist fcpci
Ein paar rmmod auf die neuen blacklists, und capiinfo zeigte endlich intelligente Werte an.
Der folgende printout stammt aus einer root-shell, in der ich versuche jam mit der originalen libpimcapi zu starten:
the-server:/usr/local/jam # ./jam.sh &
[1] 12784
the-server:/usr/local/jam # UUID: Can't get host address: java.net.UnknownHostException: the-server: the-server
java.net.UnknownHostException: the-server: the-server
at java.net.InetAddress.getLocalHost(InetAddress.java:1426)
at de.janrufmonitor.util.uuid.UUID.(UUID.java:34)
at de.janrufmonitor.service.update.UpdateManager$URLRequester.go(UpdateManager.java:122)
at de.janrufmonitor.service.update.UpdateManager.getOverview(UpdateManager.java:340)
at de.janrufmonitor.service.update.UpdateManager.getUpdates(UpdateManager.java:349)
at de.janrufmonitor.service.update.AutoUpdateService.triggerUpdate(AutoUpdateService.java:63)
at de.janrufmonitor.service.update.AutoUpdateService.startup(AutoUpdateService.java:106)
at de.janrufmonitor.service.ServiceFactory.startService(ServiceFactory.java:202)
at de.janrufmonitor.service.ServiceFactory.startup(ServiceFactory.java:139)
at de.janrufmonitor.runtime.PIMRuntime.startup(PIMRuntime.java:348)
at de.janrufmonitor.application.RunUI.go(RunUI.java:77)
at de.janrufmonitor.application.RunUI.main(RunUI.java:225)
UUID: Can't get saved UUID state: java.io.FileNotFoundException: /usr/local/jam/UUID (Datei oder Verzeichnis nicht gefunden)
Exception in thread "JAM-CapiMonitorNotifier-Thread-(deamon)" java.lang.UnsatisfiedLinkError: de.powerisdnmonitor.capi.PIMCapi.nRegister(IIII[I)I
at de.powerisdnmonitor.capi.PIMCapi.nRegister(Native Method)
at de.powerisdnmonitor.capi.PIMCapi.register(PIMCapi.java:202)
at de.powerisdnmonitor.capi.PIMCapi.register(PIMCapi.java:197)
at de.powerisdnmonitor.capi.CapiMonitor$CapiMonitorNotifier.register(CapiMonitor.java:433)
at de.powerisdnmonitor.capi.CapiMonitor$CapiMonitorNotifier.run(CapiMonitor.java:110)
at java.lang.Thread.run(Thread.java:636)
Exception in thread "JAM-MonitorSignatureCheck-Thread-(non-deamon)" java.lang.UnsatisfiedLinkError: de.powerisdnmonitor.capi.PIMCapi.nGetManufacturer(I[I)Ljava/lang/String;
at de.powerisdnmonitor.capi.PIMCapi.nGetManufacturer(Native Method)
at de.powerisdnmonitor.capi.PIMCapi.getManufacturer(PIMCapi.java:257)
at de.powerisdnmonitor.capi.PIMCapi.getManufacturer(PIMCapi.java:252)
at de.powerisdnmonitor.capi.CapiMonitor$CapiMonitorNotifier.getManufacturer(CapiMonitor.java:351)
at de.powerisdnmonitor.capi.CapiMonitor.getDescription(CapiMonitor.java:975)
at de.janrufmonitor.framework.monitor.MonitorListener$1.run(MonitorListener.java:281)
[1]+ Fertig ./jam.sh
Erfolg: Geht nicht. Dann habe ich die neue libpimcapi eingespielt:
the-server:/usr/local/jam # ./jam.sh &
[1] 12878
the-server:/usr/local/jam # java: symbol lookup error: /usr/lib/capi/lib_capi_mod_rcapi.so: undefined symbol: getHostName
[1]+ Exit 127 ./jam.sh
Erfolg? Nö, geht auch nicht …
Ich habe mal die aktuellel log-0 Datei angehängt.
Ach so: IP-V6 ist vorsichtshalber deaktiviert …
Michael.
8. Januar 2011 um 12:21 #22766Hallo Michael,
das Logfile endet zu „früh“ ! Du musst JAM immer beenden, damit das Log geflusht wird und alle Einträge geschrieben werden. Das Log hier hört beim Starten des Programmes auf. Schau mal, ob es nach dem Beenden größer ist un dposte es erneut.
Viele Grüße
Thilo8. Januar 2011 um 17:27 #22767Seltsam … OK, next try.
Das Startergebnis ist immer dasselbe:
the-server:/usr/local/jam # ./jam.sh &
[1] 26730
the-server:/usr/local/jam # java: symbol lookup error: /usr/lib/capi/lib_capi_mod_std.so: undefined symbol: processMessage
[1]+ Exit 127 ./jam.sh
the-server:/usr/local/jam #
Ich habe das Log nochmal neu erstellt und dran gehängt, jetzt gehe ich mit dem Hund in die Kneipe, ein Frustbier trinken 😆
Gruß,
Michael.8. Januar 2011 um 21:43 #22768Hallo Michael,
ok, die Registrierung an der CAPI funktioniert einwandfrei. Es wird ein Status zurückgeliefert und die Felder BlockSize und Monitoring Lines wird auch gemeldet. Also von JAM Seite sieht es jetzt gut aus. Hast du eine TK-Anlage vor der ISDN Karte hängen?
Viele Grüße
Thilo9. Januar 2011 um 15:39 #22769@thilo.brandt wrote:
Hallo Michael,
ok, die Registrierung an der CAPI funktioniert einwandfrei. Es wird ein Status zurückgeliefert und die Felder BlockSize und Monitoring Lines wird auch gemeldet. Also von JAM Seite sieht es jetzt gut aus. Hast du eine TK-Anlage vor der ISDN Karte hängen?
Viele Grüße
ThiloHallo Thilo!
Na, das ist erstmal eine gute Nachricht, da auch die anderen CAPI-Programme funktionieren.
TK Anlage ja, aber parallel auf dem BUS zur Fritz!-Karte.
Was mich irritiert ist die Startfehlermeldung der Shell, nach der dann JAM sofort und kommentarlos „abkackt“ ❓
Der Einsprungpunkt in die lib_capi_mod_std.so scheint „verwirrt“ zu sein, oder haben wir ein Rechteproblem? Ich muss JAM immer als root starten, als normaler User mag es nicht.
Gruß,
Michael.
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.
