VS 2010 instalacja SDL

0

Witam.
Mam problem z zainstalowaniem bibliotek SDL w Visual Studio 2010. Pobrałem stąd http://www.libsdl.org/download-1.2.php SDL-devel-1.2.15-VC.zip (Visual C++). Następnie robiłem wszystko tak jak np. w tym poradniku: http://lazyfoo.net/SDL_tutorials/lesson01/windows/codeblocks/index.php .
Robiłem też tym sposobem: http://nerd--thoughts.blogspot.com/2011/03/ms-visual-c-2010-express-sdl.html
I za każdym razem przy kompilacji np. takiego programu:

 #include "SDL/SDL.h"

int main( int argc, char* args[] )
{
    //Start SDL
    SDL_Init( SDL_INIT_EVERYTHING );
    
    //Quit SDL
    SDL_Quit();
    
    return 0;    
}

Mam taki błąd:
1>------ Build started: Project: SDLTest, Configuration: Debug Win32 ------
1>Build started 2012-08-21 1307.
1>InitializeBuildStatus:
1> Touching "Debug\SDLTest.unsuccessfulbuild".
1>ClCompile:
1> main.cpp
1>ManifestResourceCompile:
1> All outputs are up-to-date.
1>main.obj : error LNK2019: unresolved external symbol _SDL_Quit referenced in function _SDL_main
1>main.obj : error LNK2019: unresolved external symbol _SDL_Init referenced in function _SDL_main
1>MSVCRT.lib(crtexew.obj) : error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup
1>C:\Users\Pawel\documents\visual studio 2010\Projects\SDLTest\Debug\SDLTest.exe : fatal error LNK1120: 3 unresolved externals
1>
1>Build FAILED.
1>
1>Time Elapsed 0000.43
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Szukałem na google i żadne z proponowanych rozwiązań, które znalazłem nie działa. Wklejałem SDL.dll do folderu sysWOW64 (mam windows 7 64 bitowy). Również wklejałem do folderu z projektem i dalej nic.

0

Można temat usunąć albo zamknąć. Chodziło o to, że Visual Studio 2010 ciągle domyślnie kompiluje w 32 bitach. A ja ustawiałem biblioteki 64bitowe. Może komuś ta informacja się przyda.

0

witajcie;-)
Od kilku dni usiłuję znaleźć w google jak zainstalować sdl 1.2 w visual studio 2010. Niestety nie mogę polegać na oficjalnej instrukcji, bo w zakładce vc++ directories piszą mi coś takiego:"...has been deprecated". Oczywiście kliknąłem w znak "?", ale poza drobną aktualizacją softu nic to nie dało.

Zatem, czy ktoś może mi coś doradzić?

0

Od wersji 2010 ścieżki ustawiamy w opcjach projektu (dla każdego projektu osobno), a nie w globalnych opcjach środowiska.

0

Okej, dzięki. Właśnie już doczytałem w googlach. Już sobie zainstalowałem, ale mam pytanie. Czy sdl jest biblioteką, która działa tylko w winap? czy można jej używać również w winconsole - tak, jak w turbo pascalu initgraph?

0

Moje ostatnie pytanie wynika stąd, że na console application z tutorialowym kodem:

#include "stdafx.h"
#include <SDL/SDL.h>

SDL_Surface * ekran = NULL;

int main( int argc, char * args[] )
{
    SDL_Init( SDL_INIT_EVERYTHING );
    ekran = SDL_SetVideoMode( 640, 480, 32, SDL_SWSURFACE );
    SDL_Flip( ekran );
    SDL_Delay( 2000 );
    SDL_Quit();
    return 0;
}

wyskakują mi takie błędy kompilacji:
error LNK2019: unresolved external symbol _SDL_Quit referenced in function _SDL_main
1>sdl_ap.obj : error LNK2019: unresolved external symbol _SDL_Delay referenced in function _SDL_main
1>sdl_ap.obj : error LNK2019: unresolved external symbol _SDL_Flip referenced in function _SDL_main
1>sdl_ap.obj : error LNK2019: unresolved external symbol _SDL_SetVideoMode referenced in function _SDL_main
1>sdl_ap.obj : error LNK2019: unresolved external symbol _SDL_Init referenced in function _SDL_main
1>MSVCRTD.lib(crtexe.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup

Powiedzcie, co robię nie tak?

0

Takie mi do głowy pytanie przyszło. Jak nikt nie odpowiada, tzn. że nikt nie zna odpowiedzi czy to oznacza, że durne pytania zadaje. Serio. Pytam, bo nie wiem jak mam się ustosunkować do tego milczenia;-))

0

pod Windows program konsolowy to program konsolowy, a program graficzny to program graficzny.

0

Słuchajcie, uczę się sdl12. Już mi nie wyskakują żadne błędy kompilatora, ale po skomilowaniu takiego kodu:

 
#include <SDL.h>
SDL_Surface * ekran = NULL;
int main( int argc, char * args[] )
{
    SDL_Init( SDL_INIT_EVERYTHING );
    ekran = SDL_SetVideoMode( 640, 480, 32, SDL_SWSURFACE );
    SDL_Flip( ekran );
    SDL_Delay( 2000 );
    SDL_Quit();
    return 0;
}

wyskakuje mi takie coś:
Unhandled exception at 0x68126030 in gra2.exe: 0xC0000005: Access violation reading location 0x00000004

Czy wie ktoś może co to może być? Oczywiście vc++express 2010 windows 7. W system32 oraz systemWow64 wrzuciłem sdl.dll 32bit. Ponadto win32 console aplication i empty project. Czyli wszystko jak w tutku.

0

Okej, już mi odpaliło. Po prostu puściłem do libów sdl64 zamiast sdl86.

0 użytkowników online, w tym zalogowanych: 0, gości: 0