Seite 2 von 5

Re: bekomme SDL nicht richtig zum laufen

Verfasst: Fr Jun 25, 2010 6:09 pm
von nervensaege
habs in die konsole eingegebn "der befehl ist entweder falsch geschrieben oder kann nicht gefunden werden"

Im übrigen nochmals vielen dank für die aufmerksamkeit für das problem :) Das dafür jetzt sogar am tutorial rumgeschrieben wird spricht echt für diese Comunity ;)

Re: bekomme SDL nicht richtig zum laufen

Verfasst: Fr Jun 25, 2010 6:15 pm
von nufan
nervensaege hat geschrieben:habs in die konsole eingegebn "der befehl ist entweder falsch geschrieben oder kann nicht gefunden werden"
Wie gesagt musst du die Umgebungsvariable für g++ setzen.
http://www.proggen.org/doku.php?id=c:co ... svariablen
Als Pfad wählst du dann \Mingw\bin\ im CodeBlocks-Verzeichnis aus.

Re: bekomme SDL nicht richtig zum laufen

Verfasst: Fr Jun 25, 2010 7:25 pm
von nervensaege
gemacht; leider immernoch keine änderung, der compiler gibt:
||=== sdl1, Debug ===|
||Warning: .drectve `/DEFAULTLIB:"MSVCRT" /DEFAULTLIB:"OLDNAMES" ' unrecognized|
C:\SDL\SDL-1.2.14\lib\SDLmain.lib(.\Release_NOSTDIO\SDL_win32_main.obj):C:\Temp\src\SDL-1.:(.text[_main]+0x55)||undefined reference to `__alloca_probe'|
16]+0x3b)||undefined reference to `__alloca_probe'|
16]+0x76)||undefined reference to `__alloca_probe'|
||=== Build finished: 3 errors, 1 warnings ===|


und PATH sieht so aus:
%GTK_BASEPATH%\bin;%SystemRoot%\system32;C:\SDL\SDL-1.2.14\include;C:\SDL\SDL-1.2.14\lib;C:\Program_Files\CodeBlocks\MinGW\bin\;

Re: bekomme SDL nicht richtig zum laufen

Verfasst: Fr Jun 25, 2010 7:29 pm
von nufan
Hmm... du linkst die Visual Bibliotheken. Lösch mal

Code: Alles auswählen

C:\SDL\SDL-1.2.14\include;C:\SDL\SDL-1.2.14\lib
aus der Umgebungsvariable.

Re: bekomme SDL nicht richtig zum laufen

Verfasst: Sa Jun 26, 2010 10:01 am
von nervensaege
ändert leider nichts

Re: bekomme SDL nicht richtig zum laufen

Verfasst: Sa Jun 26, 2010 12:10 pm
von nufan
So, ich bin jetzt das ganze von Anfang an durchgegangen. Ich habe CodeBlocks, Mingw und SDL komplett entfernt und neu eingerichtet (Warum sagt mir keiner, dass während ich in Irland war eine neue CodeBlocks-Version rauskam? ^^). IMeine Pfadangaben sollen die als Orientierungshilfe dienen, die musst du natürlich anpassen:
* CodeBlocks inklusive Mingw installieren (C:\Program Files\CodeBlocks)
* Mingw-Pfad in die Path-Variable eintragen (C:\Program Files\CodeBlocks\MinGW\bin)
* Wenn du in der Konsole nun g++ eingibst solltest du als Antwort "g++: no input files" bekommen.
* SDL für Mingw runterladen und entpacken (http://www.libsdl.org/release/SDL-devel ... w32.tar.gz entpacken nach C:\Users\nufan\Documents\SDL\SDL-1.2.14)
* Den Inhalt von C:\Users\nufan\Documents\SDL\SDL-1.2.14\include nach C:\Program Files\CodeBlocks\MinGW\include kopieren (also so, dass du in \MinGW\include\ einen SDL-Unterordner hast)
* Den Inhalt von C:\Users\nufan\Documents\SDL\SDL-1.2.14\lib nach C:\Program Files\CodeBlocks\MinGW\lib kopieren
* In CodeBlocks ein leeres Projekt anlegen.
* main.cpp anlegen:

Code: Alles auswählen

#include <SDL/SDL.h>

int main (int argc, char *argv[])   // Wichtig: main MUSS diese Signatur haben!
{
    SDL_Init (SDL_INIT_EVERYTHING);
    SDL_Surface *screen = SDL_SetVideoMode (800, 600, 32, SDL_DOUBLEBUF);
    SDL_Delay (3000);
    return 0;
}
* Jetzt Rechtsklick aufs Projekt - "Build options..."
* Am besten wählst du jetzt links oben das ganze Projekt aus (also nicht nur Debug oder Release)
* In den Linker-Settings unter "Other linker options" folgendes eintragen:

Code: Alles auswählen

-lmingw32 -lSDLmain -lSDL
* Wenn du willst, dass außerhalb von CodeBlocks kein cmd.exe-Fenster geöffnet wird, musst du noch -mwindows dranhängen
* So, jetzt mit Strg+F9 kompilieren, eventuell bekommst du eine Warnung, dass screen nirgends verwendet wird. Das kannst du einfach ignorieren.
* Wenn du das Programm jetzt mit F9 ausführst und 3 Sekunden lang ein 800*600 Pixel großes, schwarzes Fenster siehst hast du alles richtig gemacht :)
Ich wrede das dann mal in etwas schönerer Form ins Wiki übertragen.

Re: bekomme SDL nicht richtig zum laufen

Verfasst: Sa Jun 26, 2010 1:12 pm
von nervensaege
Gut ich hab das ganze jetzt einmal nachgemacht.
(bis zur Konsoleneingabe hat auf jeden fall alles funktioniert, ich hab die richtige rückmeldung bekommen)
So, wenn ich deinen code eingebe compiliert er das ganze auch ohne beschwerden.
will ichs aber ausführen bekomme ich ( von windows) die meldung:
"Die Anwendung konnte nicht gestartet werden weil SDL.dll nicht gefunden wurde..."
es erscheint außerdem ein leeres konsolenfenster.
Und dann ist halt vorbei

Re: bekomme SDL nicht richtig zum laufen

Verfasst: Sa Jun 26, 2010 1:23 pm
von Kerli
nervensaege hat geschrieben:"Die Anwendung konnte nicht gestartet werden weil SDL.dll nicht gefunden wurde..."
Dann musst du schauen das er die SDL.dll finden kann. Also entweder den Pfad zu ihr zu PATH hinzufügen oder die SDL.dll in den gleichen Ordner wie die Executable kopieren.

Re: bekomme SDL nicht richtig zum laufen

Verfasst: Sa Jun 26, 2010 1:39 pm
von nervensaege
hmm jetzt gibt der compiler auf jeden fall auch die warnung mit screen aus

die windows warnung ist aber die gleiche geblieben obwohl ich den pfad zum lib-ordner zu PATH hinzugefügt habe.
Ich habe sogar nochmal den ganzen lib ordner in die Projektdatei reinkopiert.

Mir ist allerdings aufgefallen das die SDL-bibliotheken bei mir alle irgendwas.dll.a heißen.
liegts daran?

Re: bekomme SDL nicht richtig zum laufen

Verfasst: Sa Jun 26, 2010 1:41 pm
von Kerli
nervensaege hat geschrieben:die windows warnung ist aber die gleiche geblieben obwohl ich den pfad zum lib-ordner zu PATH hinzugefügt habe.
SDL.dll ist im bin-Ordner...