(Gelöst) [Linux] Pub.OpenAL und libdl.so

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Vertex

Betreff: (Gelöst) [Linux] Pub.OpenAL und libdl.so

BeitragMo, Nov 19, 2007 0:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Habe Ubuntu 7.irgendwas..
BlitzMax läuft soweit auch mit OpenGL aber sobald ich einen Test mit OpenAL versuche, gibt es Probleme...
Folgender Testcode:
Code: [AUSKLAPPEN]
SuperStrict

Framework BRL.Blitz
Import Pub.OpenAL


Er meldet mir hier beim Linken in der Datei ***/mod/pub.mod/openal.mod/openal.c
Zitat:
undefined reference to `dlsym'
undefined reference to `dlopen'


Die beiden Funktionen sind zum Laden der Bibliothek libopenal.so und zum ermitteln der Funktions-Adressen in der Bibliothek zuständig.

Vermutlich wird halt die libdl.so nicht mit gelinkt. Wie kann ich das Problem beheben?

mfg olli

Edit:
Brucey hat die Lösung parat gehabt:
Import "-ldl" und schon gehts.
vertex.dreamfall.at | GitHub
  • Zuletzt bearbeitet von Vertex am So, Nov 25, 2007 15:36, insgesamt einmal bearbeitet
 

Dreamora

BeitragMo, Nov 19, 2007 2:17
Antworten mit Zitat
Benutzer-Profile anzeigen
sind die dl nicht die dynamic library funktionen des Kerns, die notwendig sind um überhaupt irgendwelche SO zu laden?

wenn, dann hat er vermutlich die dlfcn.h nicht gefunden oder mit der is was im argen zumindest verglichen mit dem was er erwartet.
Nutzt du die erwartete GCC Version? oder eine höhere?
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Vertex

BeitragMo, Nov 19, 2007 7:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, libdl.so ist zuständig dafür, um dynamische Bibliotheken zu laden. dlopen zum Laden, dlsym zum Ermitteln des Funktionspointers einer Funktion.

Ich hatte immer die Fehlermeldung "libstdc++.so.6, needed by /usr/X11R6/lib/libGLU.so, may conflict with libstdc++.so.5" (wobei X11R6 glaube ich nicht so hieß)

Da habe ich gegoogelt und habe dazu folgenden Thread gefunden:
blitzbasic.com

und führte das im Terminal aus:
Code: [AUSKLAPPEN]
apt-get remove gcc-3.3
link /usr/bin/gcc /usr/bin/gcc-3.3
link /usr/bin/g++ /usr/bin/g++-3.3

(apt-get delete gibt es ja nicht?!)

Dann war die Fehlermeldung behoben und sogar GLMax2D ging.
Ich habe keine Ahnung, wie ich an die Version vom g++ heran komme. Normalerweise geht das ja über g++ v aber ich finde das ding nicht.

mfg olli
vertex.dreamfall.at | GitHub

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group