Sehe ich das richtig das das LIBS+= usw. nur für das compilieren zuständig ist? Wenn ich die lib in meinen Pfad (zB ~/) lege, führt er die App problemlos aus ...Starte /home/padreigh/tmp/subDirs/bin/eins...
/home/padreigh/tmp/subDirs/bin/eins: error while loading shared libraries: libhellolib.so.1: cannot open shared object file: No such file or directory
/home/padreigh/tmp/subDirs/bin/eins beendet, Rückgabewert 127
LIBS += -L/pfad/zum/lib/dir -lname funzt nicht ...
LIBS += -L/pfad/zum/lib/dir -lname funzt nicht ...
Wenn ich das Beispiel in meiner Signatur compiliere und ausführe (unter QtCreator) erhalte ich immer ein
Hier steht einiges zum Thema:
http://xahlee.org/UnixResource_dir/_/ldpath.html
// edit: sry, war wohl doch etwas kurz geraten
Also, das LIBS += ist nur zum kompilieren. Zur Laufzeit muss die Lib gefunden werden können. Wenn deine nötige lib nicht gefunden wird, bitte geh nicht her und setz ein globales LD_LIBRARY_PATH, sondern schreib ein Wrapper-Script, welches nur für diese Shell, in der das Script läuft, die Umgebungsvariable erweitert (steht glaub ich so auch am Ende im Link), und starte dann die eigentliche exe.
http://xahlee.org/UnixResource_dir/_/ldpath.html
// edit: sry, war wohl doch etwas kurz geraten
Also, das LIBS += ist nur zum kompilieren. Zur Laufzeit muss die Lib gefunden werden können. Wenn deine nötige lib nicht gefunden wird, bitte geh nicht her und setz ein globales LD_LIBRARY_PATH, sondern schreib ein Wrapper-Script, welches nur für diese Shell, in der das Script läuft, die Umgebungsvariable erweitert (steht glaub ich so auch am Ende im Link), und starte dann die eigentliche exe.