SDL fehlermeldung!

powerplayer

Erfahrenes Mitglied
Hi,

bekomme mein Compilieren dieses Scriptes:

PHP:
#include <stdlib.h>
#include "SDL.h"

int main()
{
	if ( SDL_Init(SDL_INIT_VIDEO) < 0 )
	{
		fprintf(stderr, "SDL konnte nicht initialisiert werden: %s\n", SDL_GetError());
		exit(1);
	}

	atexit(SDL_Quit);

	SDL_Surface *display;

	display = SDL_SetVideoMode( 800, 600, 16, SDL_SWSURFACE );
	if ( display == NULL )
	{
		fprintf(stderr, "Konnte kein Fenster 800x600px oeffnen: %s\n", SDL_GetError());
		exit(1);
	}
}

eine Fehler meldung:

error C4716: 'SDL_main' : must return a value

Kann mir einer sagen was falsch daran ist?

mfg pp
 
Habe ich probiert nur denn sagt er mir auf einmal 6 Fehlermeldungen an.

PHP:
#include <stdlib.h>
#include "SDL.h"

int main()
{
	if ( SDL_Init(SDL_INIT_VIDEO) < 0 )
	{
		fprintf(stderr, "SDL konnte nicht initialisiert werden: %s\n", SDL_GetError());
		exit(1);
	}
	atexit(SDL_Quit);

	SDL_Surface *display;

	display = SDL_SetVideoMode( 800, 600, 16, SDL_SWSURFACE );
	if ( display == NULL )
	{
		fprintf(stderr, "Konnte kein Fenster 800x600px oeffnen: %s\n", SDL_GetError());
		exit(1);
	}
	return 0;
}

mfg pp
 
Und die lauten? Meistens tut man die SDL-Header in einen Unterordner der SDL heißt.
Versuchs doch mal mit: #include <SDL/SDL.h>
Ansonsten...was für einen Compiler benutzt du?

greetz
daddz
 
Die Fehlermeldungen lauten:

error LNK2001: unresolved external symbol _SDL_FreeSurface
error LNK2001: unresolved external symbol _SDL_Delay
error LNK2001: unresolved external symbol _SDL_Flip
error LNK2001: unresolved external symbol _SDL_UpperBlit
error LNK2001: unresolved external symbol _IMG_Load
error LNK2001: unresolved external symbol _SDL_SetVideoMode
error LNK2001: unresolved external symbol _SDL_Quit
error LNK2001: unresolved external symbol _SDL_GetError
error LNK2001: unresolved external symbol _SDL_Init
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/Initialisieren.exe : fatal error LNK1120: 10 unresolved externals

Der Pfad zur SDL.h stimmt.

Das ganze Compiliere ich mit Microsoft Visual C++ 6.0

mfg
pp
 
Das sind Linker-Fehler. Du musst die entsprechenden .lib Dateien verwenden. :p

EDIT:

powerplayer hat gesagt.:
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/Initialisieren.exe : fatal error LNK1120: 10 unresolved externals

Du hast ein Win32 Projekt erstellt und benutzt main().
Entweder du benutzt eine Konsolenanwendung oder du benutzt WinMain. :)
 
Zuletzt bearbeitet:
moin


Eine Lib einbinden kannst du im Visual Studio mit
Code:
#pragma comment(lib, "libary.lib")


mfg
umbrasaxum
 
Problemm gelöst,

So geht es:


PHP:
#include <stdlib.h>
#include "SDL.h"

#ifdef _WIN32
#undef main
#endif
int main()
{
    if ( SDL_Init(SDL_INIT_VIDEO) < 0 )
    {
        fprintf(stderr, "SDL konnte nicht initialisiert werden: %s\n", SDL_GetError());
        exit(1);
    }
    atexit(SDL_Quit);

    SDL_Surface *display;

    display = SDL_SetVideoMode( 800, 600, 16, SDL_SWSURFACE );
    if ( display == NULL )
    {
        fprintf(stderr, "Konnte kein Fenster 800x600px oeffnen: %s\n", SDL_GetError());
        exit(1);
    }
    return 0;
}

Und ich hatte ausversehen keine Win32 Konsolenanwendung erstellt.

Vielen dank euch allen für eure Hilfe

mfg pp
 
Zurück