Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

KDevelop + SDL + SDL_image = Verzweiflung^10

Alles rund um die verschiedenen Konsolen und shells sowie die Programmierung unter Linux

Moderator: Moderatoren

Antworten
pi
Newbie
Newbie
Beiträge: 12
Registriert: 7. Nov 2004, 22:24

KDevelop + SDL + SDL_image = Verzweiflung^10

Beitrag von pi »

Hallo,
Ich versuche derzeit ein kleines Spiel das ich unter Windows angefangen hatte zu programmieren weiter bzw. zu Ende zu bringen.
Als Entwicklungsumgebung nutze ich derzeit KDevelop, das Spiel nutz die SDL-Biblioteken (SDL, SDL_image, SDL_mixer) für Grafik, Sound und Input.
Unter Windows kann ich das ganze ohne Probleme kompilieren.
Eine einfache SDL-Anwendung unter KDevelop ist auch kein Problem, wenn ich allerdings versuche SDL_image einzubinden bekomme ich immer folgenden Fehler:

Code: Alles auswählen

cd '/data/Entwicklung/YAS/Code/yas/debug' && WANT_AUTOCONF_2_5="1" WANT_AUTOMAKE_1_6="1" gmake -k -j1 
Linken der Datei yas (libtool)
*** Beendet mit Status: 2 ***
Bei den Linker-Einstellungen hatte ich bisher folgende Kombinationen ausprobiert, ohne das dadurch irgendetwas geändert wurde:
-I/usr/include/SDL/ -L/usr/lib/ -lSDL -lSDL_image
-lSDL -lSDL_image
-L/usr/lib/ -lSDL -lSDL_image
-I/usr/include/SDL/ -lSDL -lSDL_image

libSDL_image liegt im selben Verzeichnis wie libSDL.a (/usr/lib), man sollte also davon ausgehen, das er das auch finden sollte, mit SDL alleine gibt es ja auch keine Probleme, oder?

Irgendwie macht mich das echt fertig, auch nach über einer Stunde herumgegoogle habe ich noch nichts gefunden das mir hilft, daher nun mein verzweifelter Hilferuf hier...)8
taki
Advanced Hacker
Advanced Hacker
Beiträge: 974
Registriert: 30. Apr 2004, 17:40
Wohnort: Berlin

Beitrag von taki »

Hallo.
Wo gibst Du die Linkeroptionen vor?

Mir ging das neulich mit ner KDE Anwendung so (s.a. http://www.linux-club.de/viewtopic.php?p=140278#140278, könnte mir vorstellen, dass für das SDL-Problem das gleiche gilt). Ich hatte hilflos bei den Projektoptionen unter den Configure-Einstellungen verschiedene Sachen ausprobiert, um die Bibliotheken kio und kfile mit zu linken. Kam mir dabei schon richtig doof vor :oops: , weil es so offensichtlich war, dass nur eine Kleinigkeit fehlt ums hinzubekommen, ich aber ums verrecken nicht rausbekam, WO ich es drehen muss.

Im Makefile.am muss man es machen. Die Optionen für den Linker dort eingetragen, dann findet er die Bibliotheken auch.

Ich wüsste nun schon gerne, wofür die Optionen in den Projekteinstellungen denn gut sein sollen, Einstellungen dort sind entweder wirkungslos oder machen es noch schlimmer :?:

Vielleicht hilft Dir das.
Gruß aus Berlin,
Andreas
SuSE 12.3 kernel 3.7.10-1.16-desktop, K Desktop Environment Version 4.10.5 r1 - Medion Titanium Aldi v. 03/2009
pi
Newbie
Newbie
Beiträge: 12
Registriert: 7. Nov 2004, 22:24

Beitrag von pi »

hm,
hatte das ganze mal mit der Anjuta IDE kompiliert und dort Meldungen über fehlende Libraries bekommen, die SDL scheinbar braucht, die allerdings wohl in einen anderen Pfad sein sollten als sie bei mir vorinstalleirt waren. Mal einfach die Libraries kopiert -> nun funzt, auch wenn SDL seltsamerweise ziemlich lahm ist.
marcin
Newbie
Newbie
Beiträge: 31
Registriert: 14. Jul 2004, 14:48

Beitrag von marcin »

pi, musst du es unbedingt mit KDevelop kompilieren ? Wäre es nicht einfacher sich einfach eingenes Makefile-Script an zu legen ?
Da versteht man zumindest was da vorsich geht.
Du hast geschrieben das du da SDL benutzt.Ohne KDevelop ist es eigentlich kein Problem SDL-Programme zu kompileren.Zum beispiel mit diesem Aufruf:

Code: Alles auswählen

g++ -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -I/usr/include/SDL \-D_REENTRANT quellcode.c -o ziel
auch wenn SDL seltsamerweise ziemlich lahm ist.
Das hat aber sicher nichts mit dem kompilieren zu tun, sondern eher mit dem Quellcode
CPU - Intel Pentium 3.20GHz|RAM - 512MB |nVidia GeForce 5500 256MB|160GB HDD|DSL|OS-Suse Linux 9.1\Windows XP home|
Eine interesante Sache: Softwarepatente
pi
Newbie
Newbie
Beiträge: 12
Registriert: 7. Nov 2004, 22:24

Beitrag von pi »

Natürlich muss ich es nicht unbedingt mit KDevelop kompilieren, aber so eine IDE ist halt was feines wenn man so faul ist wie ich (8.

Das SDL so langsam war hatte sicher auch was mit dem code zu tun, allerdings war es selbst für ganz mies geschriebenen code einfach viel zu langsam: Zeichnen von etwa 20 Tiles um den halben Bildschirm zu bedecken ist mit um die 10 FPS gelaufen (bei 640x480 aufn 2,6 Athlon^^).
Antworten