Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Libbass wird nicht gefunden

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Bibliotheken
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Westbeam



Anmeldungsdatum: 22.12.2009
Beiträge: 760

BeitragVerfasst am: 28.11.2013, 12:10    Titel: Libbass wird nicht gefunden Antworten mit Zitat

Guten Morgen ihr lieben Programmierer.

Ich habe ein Problem mit der Bass-Lib. Diese wird seltsamerweise nicht gefunden, obwohl sie im per Libpath angegeben Pfad existiert. Beim Kompilieren gibt es auch keine Fehler, erst beim Starten des Programms erscheint die Fehlermeldung.
Zitat:
error while loading shared libraries: libbass.so: cannot open shared object file: No such file or directory

Aber wieso? Wie kann das sein? Wo kommt das her? Wieso findet er die lib nicht? Wieso ist das so? Wie kann ich das lösen? Wie verhindere ich dieses Fehler?

mfg, Westbeam zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9676
Wohnort: Neben der Festplatte

BeitragVerfasst am: 28.11.2013, 14:45    Titel: Antworten mit Zitat

Also ich hab das früher so gelöst...

Code:
#!/usr/bin/env sh

export LD_LIBRARY_PATH="./"
chmod +x programmname
./programmname


Da es von BASS viele (unter umständen zueinander inkompatible) Versionen gibt, würde ich die Bibliothek nicht in ein Bibliothekverzeichnis packen, sondern in das Anwendungsverzeichnis und dann das obige Shell-Skript verwenden.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Westbeam



Anmeldungsdatum: 22.12.2009
Beiträge: 760

BeitragVerfasst am: 28.11.2013, 15:01    Titel: Antworten mit Zitat

Wäre eine Möglichkeit, danke erstmal. Aber geht es auch Programmintern? Also ohne extra Script?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9676
Wohnort: Neben der Festplatte

BeitragVerfasst am: 28.11.2013, 15:19    Titel: Antworten mit Zitat

Zumindest vor ein paar Jahren konnte man den library path nicht direkt in FB oder im Compiler setzen. Ich weiß aber nicht, ob sich da was getan hat. Mit dem GCC-Backend müsste das ja theoretisch möglich sein.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4078
Wohnort: ~/

BeitragVerfasst am: 28.11.2013, 16:46    Titel: Antworten mit Zitat

Unter Linux kann man compilieren mit
Code:
fbc meinprogramm.bas -l meineBibliothek -Wl --rpath,./

Scheint aber nur zu gehen, wenn der relative Pfad ./ genommen wird, also wenn die Bibliothek im Stammverzeichnis des Programms liegt. Genauer gesagt kann ich auch einen anderen Pfad angeben und er sucht trotzdem im Stammverzeichnis.
Unter Windows nicht getestet.

Zitat:
Wie kann das sein? Wo kommt das her? Wieso findet er die lib nicht? Wieso ist das so?

Das Problem ist (wie die gegebene Lösung ja andeutet), dass nicht der Compiler, sondern der Linker die Bibliothek sucht und sie daher dem Linker mitgeteilt werden muss.
_________________
Es gibt keine an Sicherheit grenzende Wahrscheinlichkeit. Wahrscheinlichkeit grenzt immer an Unsicherheiten.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Bibliotheken Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz