Ich habe ein gemeinsames Objekt mit dem Namen a.so erstellt und es funktionierte perfekt mit einer ausführbaren Datei, die in c/C++ (linux) entwickelt wurde. Dieses gemeinsame Objekt bietet einige Funktionen für die Integration in externe Software. Im Folgenden sind einige Merkmale dieses gemeinsame Objekt:Undefined Reference Shared Object Linux [C++]
- Kommuniziert mit Geräten auf RS232
- TCP/IP + SSL-Kommunikation mit einem Server
Jetzt ich JNI-Wrapper erschaffe (b.so) von oben gemeinsamen Objekt und verwendet diesen Befehl gemeinsames Objekt zu öffnen und einen Handler erstellen:
dlopen (FILE_NAME, RTLD_LAZY | RTLD_GLOBAL):
Aber es gibt mir nicht möglich, Fehler LIB zu laden: /usr/lib/a.so - [/usr/lib/a.so: undefined Symbol: EVP_cleanup]
EVP_cleanup in a.so verwendet wird, und ist Teil der openssl/evp.h-Header-Datei.
Ich habe versucht, ssl und Crypto-Bibliotheken in b.so als auch zu verknüpfen, aber die Ausgabe ist die gleiche wie oben.
Kann mir jemand Vorschläge oder eine alternative Methode geben?
Dank
Grüße
Vielen Dank! Es löste das Problem. – user391318