SDL



  • BITTE! Kann mir keiner sagen was ich tun soll? Was die Fehlermeldungen heißen? Bzw. wie ich meinen Fehler finden kann?
    Ich werd hier noch verrückt vor lauter Konsolenprogrammierung.....ich brauch viele bunte Farben --> eben SDL!!!

    MfG
    Stromberg



  • kein problem, dass bekommst du schon hin, hatte am anfang auch probleme

    hast du die anleitung schritt für schritt gemacht?

    poste mal deinen code



  • Das is der standard Codeblocks Quellcode der bei jeder neuen SDL Apllication in der main steht. Und genau den hab ich halt zum testen compiliert und es sind die oben angegebenen Fehler aufgetreten.

    #ifdef __cplusplus
        #include <cstdlib>
    #else
        #include <stdlib.h>
    #endif
    #include <SDL/SDL.h>
    
    int main ( int argc, char** argv )
    {
        // initialize SDL video
        if ( SDL_Init( SDL_INIT_VIDEO ) < 0 )
        {
            printf( "Unable to init SDL: %s\n", SDL_GetError() );
            return 1;
        }
    
        // make sure SDL cleans up before exit
        atexit(SDL_Quit);
    
        // create a new window
        SDL_Surface* screen = SDL_SetVideoMode(640, 480, 16,
                                               SDL_HWSURFACE|SDL_DOUBLEBUF);
        if ( !screen )
        {
            printf("Unable to set 640x480 video: %s\n", SDL_GetError());
            return 1;
        }
    
        // load an image
        SDL_Surface* bmp = SDL_LoadBMP("cb.bmp");
        if (!bmp)
        {
            printf("Unable to load bitmap: %s\n", SDL_GetError());
            return 1;
        }
    
        // center the bitmap on screen
        SDL_Rect dstrect;
        dstrect.x = (screen->w - bmp->w) / 2;
        dstrect.y = (screen->h - bmp->h) / 2;
    
        // program main loop
        bool done = false;
        while (!done)
        {
            // message processing loop
            SDL_Event event;
            while (SDL_PollEvent(&event))
            {
                // check for messages
                switch (event.type)
                {
                    // exit if the window is closed
                case SDL_QUIT:
                    done = true;
                    break;
    
                    // check for keypresses
                case SDL_KEYDOWN:
                    {
                        // exit if ESCAPE is pressed
                        if (event.key.keysym.sym == SDLK_ESCAPE)
                            done = true;
                        break;
                    }
                } // end switch
            } // end of message processing
    
            // DRAWING STARTS HERE
    
            // clear screen
            SDL_FillRect(screen, 0, SDL_MapRGB(screen->format, 0, 0, 0));
    
            // draw bitmap
            SDL_BlitSurface(bmp, 0, screen, &dstrect);
    
            // DRAWING ENDS HERE
    
            // finally, update the screen :)
            SDL_Flip(screen);
        } // end main loop
    
        // free loaded bitmap
        SDL_FreeSurface(bmp);
    
        // all is well ;)
        printf("Exited cleanly\n");
        return 0;
    }
    

    MfG
    Stromberg



  • hast du denn genau das sdl-paket runter geladen, welches in der anleitung angegeben ist?

    probiere mal:
    öffne das projekt, dann gehe auf Projekt > Build options > Linker

    dann trag bei other linker options folgendes ein
    -lmingw32 -lSDLmain -lSDL

    und versuche dann mal das projekt zu compilieren



  • Bringt nichts, ist genauso wie zuvor.
    http://www.bilder-space.de/show.php?file=zRVWL9Tbd9ZHS9T.JPG

    MfG
    Stromberg



  • -lmingw32
    -lSDLmain
    -lSDL

    du hast die Striche vergessen

    und links braucht das nicht



  • Mit den Strichen "-" gehts leider auch nicht. 😞

    MfG
    Stromberg



  • welche codeblocks version hast du denn?
    sonst lade nochmal die neuste codeblocksverion mit mingw von codeblocks.org
    und mache die anleitung + den sdl download komplett nochmal



  • Ich hab V. 1.0rc2
    Ist diese Version zu alt?



  • Hab mir gerade die neuste Codeblocks Version runtergeladen, jetzt klappts...
    Vielen Dank für deinen Rat!

    MfG
    Stromberg


Anmelden zum Antworten