Hallo,
ich stehe gerade sehr auf dem Schlauch. Ich möchte unter c/c++ eine eigene shared library erstellen und dann logishcerweise nutzen.
Umgebung: suse10.3, Eclipse+CDT,
So weit so gut. Lib geschrieben und compiliert. Heraus kommt eine "libtestlib.so". Nun soll diese natürlich in ein anderes Programm eingebunden werden. Also setzte ich im Programmprojekt einen Linker pfad in das (in diesem falle) debug verzeichnis des Library projektes. Mein Programm, das die lib verwenden soll compiliert auch. Auch der Linker meckert nicht. Lösche ich spaßenshalber die "libtestlib.so" kriegt er ne Kriese. Daher gehe ich davon aus, dass er sie da gefunden hat und auch ordentlich linkt.
Wenn ich es jedoch starten will sagt er _immer_
"error while loading shared libraries: libtestlib.so: cannot open shared object file: No such file or directory".
Es ist völlig gleich wo ich die .so Datei hin schreibe.
a) /usr/local/lib (als admin einfach hinkopiert, und hat selbe Zugriffsrechte (-rwxr-xr-x)
b) direkt ins verzeichnis wo die binary des programms ist, zu der die lib dazu gelinkt wurde.
...immer der selbe fehler.
Andere libs die in z.B. /usr/local/lib stehen können problemlos verwendet werden. Da kommt kein Fehler.
Irgendjemand eine Idee was ich da falsch mache? Muss irgendwas sehr einfaches sein.
Danke
ich stehe gerade sehr auf dem Schlauch. Ich möchte unter c/c++ eine eigene shared library erstellen und dann logishcerweise nutzen.
Umgebung: suse10.3, Eclipse+CDT,
So weit so gut. Lib geschrieben und compiliert. Heraus kommt eine "libtestlib.so". Nun soll diese natürlich in ein anderes Programm eingebunden werden. Also setzte ich im Programmprojekt einen Linker pfad in das (in diesem falle) debug verzeichnis des Library projektes. Mein Programm, das die lib verwenden soll compiliert auch. Auch der Linker meckert nicht. Lösche ich spaßenshalber die "libtestlib.so" kriegt er ne Kriese. Daher gehe ich davon aus, dass er sie da gefunden hat und auch ordentlich linkt.
Wenn ich es jedoch starten will sagt er _immer_
"error while loading shared libraries: libtestlib.so: cannot open shared object file: No such file or directory".
Es ist völlig gleich wo ich die .so Datei hin schreibe.
a) /usr/local/lib (als admin einfach hinkopiert, und hat selbe Zugriffsrechte (-rwxr-xr-x)
b) direkt ins verzeichnis wo die binary des programms ist, zu der die lib dazu gelinkt wurde.
...immer der selbe fehler.
Andere libs die in z.B. /usr/local/lib stehen können problemlos verwendet werden. Da kommt kein Fehler.
Irgendjemand eine Idee was ich da falsch mache? Muss irgendwas sehr einfaches sein.
Danke