Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

SDL obsługa okna - Błąd LNK2019

Ostatnio zmodyfikowano 2021-02-26 18:35
Autor Wiadomość
superetoille
Temat założony przez niniejszego użytkownika
SDL obsługa okna - Błąd LNK2019
» 2021-02-25 20:03:58
Witam,

Od niedawna uczę się programować w SDL2. Niestety jaki kod bym nie napisała czy skopiowała pojawia się prawie zawsze lista tych samych błędów.
Korzystam z Visual Studio 2019.
Proszę o pomoc bo sama tego nie rozwiążę. Lista błędów poniżej:


Błąd LNK2019 nierozpoznany symbol zewnętrzny _main przywołany w funkcji "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) Okno C:\Users\zuza\source\repos\Okno\Okno\MSVCRTD.lib(exe_main.obj) 1
Błąd LNK1120 liczba nierozpoznanych elementów zewnętrznych: 11 Okno C:\Users\zuza\source\repos\Okno\Debug\Okno.exe 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny _SDL_CreateWindow przywołany w funkcji _SDL_main Okno C:\Users\zuza\source\repos\Okno\Okno\main.obj 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny _SDL_Delay przywołany w funkcji _SDL_main Okno C:\Users\zuza\source\repos\Okno\Okno\main.obj 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny _SDL_DestroyWindow przywołany w funkcji _SDL_main Okno C:\Users\zuza\source\repos\Okno\Okno\main.obj 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny _SDL_FillRect przywołany w funkcji _SDL_main Okno C:\Users\zuza\source\repos\Okno\Okno\main.obj 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny _SDL_GetError przywołany w funkcji _SDL_main Okno C:\Users\zuza\source\repos\Okno\Okno\main.obj 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny _SDL_GetWindowSurface przywołany w funkcji _SDL_main Okno C:\Users\zuza\source\repos\Okno\Okno\main.obj 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny _SDL_Init przywołany w funkcji _SDL_main Okno C:\Users\zuza\source\repos\Okno\Okno\main.obj 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny _SDL_MapRGB przywołany w funkcji _SDL_main Okno C:\Users\zuza\source\repos\Okno\Okno\main.obj 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny _SDL_Quit przywołany w funkcji _SDL_main Okno C:\Users\zuza\source\repos\Okno\Okno\main.obj 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny _SDL_UpdateWindowSurface przywołany w funkcji _SDL_main Okno C:\Users\zuza\source\repos\Okno\Okno\main.obj 1

Nie wiem czy to jest problem niedołączonej jakiejś biblioteki. Jeszcze raz proszę o pomoc.
strona z której się uczę:
 https://lazyfoo.net/tutorials/SDL/01_hello_SDL/index2.php.

Kod programu:

C/C++
//Using SDL and standard IO
#include <SDL.h>
#include <stdio.h>

//Screen dimention constants
const int SCREEN_WIDTH = 640;
const int SCREEN_HEIGHT = 480;

int main( int argc, char * args[ ] ) {
   
   
//The window we'll be rendering to
   
SDL_Window * window = NULL;
   
   
//The surface contained by the window
   
SDL_Surface * screenSurface = NULL;
   
   
//Initialize SDL
   
if( SDL_Init( SDL_INIT_VIDEO ) < 0 ) {
       
printf( "SDL could not initialize! SDL_Error: %s\n", SDL_GetError() );
   
}
   
else {
       
//Create window
       
window = SDL_CreateWindow( "SDL Tutorial", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH, SCREEN_HEIGHT, SDL_WINDOW_SHOWN );
       
if( window == NULL ) {
           
printf( "Window could not be created! SDL_Error: %s\n", SDL_GetError() );
       
}
       
else {
           
//Get window surface white
           
screenSurface = SDL_GetWindowSurface( window );
           
           
//Fill the surface white
           
SDL_FillRect( screenSurface, NULL, SDL_MapRGB( screenSurface->format, 0xFF, 0xFF, 0xFF ) );
           
           
//Update the surface
           
SDL_UpdateWindowSurface( window );
           
           
//Wait two seconds
           
SDL_Delay( 5000 );
       
}
       
    }
   
   
//Destroy window
   
SDL_DestroyWindow( window );
   
   
//Quit SDL subsystem
   
SDL_Quit();
   
   
return 0;
   
}

 


P-178158
pekfos
» 2021-02-25 20:09:36
Dodaj bibliotekę do linkera.
» Biblioteki C++» Kurs SFML 2.x, C++» Instalacja i konfiguracjaKonfiguracja SFML 2.0 (Visual C++) lekcja (przykład dla innej biblioteki).
P-178160
superetoille
Temat założony przez niniejszego użytkownika
» 2021-02-26 04:58:31
Nie rozumiem po co mam dodawać kolejną bibliotekę. Ja chcę pracować z SDL.
Po dodaniu dalej występują te same błędy.
P-178161
DejaVu
» 2021-02-26 09:41:53
Nie czytasz ze zrozumieniem. Na przykładzie innej biblioteki masz opisane jak się rozwiązuje błędy linkera, które masz w SDL-u.
P-178162
superetoille
Temat założony przez niniejszego użytkownika
» 2021-02-26 12:19:02
Ale ja już na początku dodałam SDL2.lib i SDL2main.lib do linkera. Czy oprócz nich trzeba jeszcze coś dodać?
P-178163
pekfos
» 2021-02-26 13:17:00
Objawy są takie, jakby to nie było zrobione. Jesteś pewna że zrobiłaś to dla właściwej konfiguracji? Pole 1 na obrazku. Upewnij się też że podajesz nam wszystkie błędy z zakładki Output (niestety Visual po polsku jest tu barierą językową).

P-178164
superetoille
Temat założony przez niniejszego użytkownika
» 2021-02-26 16:17:12
Skorzystałam  z Menedżera konfiguracji i pozbyłam się większości błędów.
Pozostały jeszcze dwa:


Ostrzeżenie C26812 Typ wyliczeniowy „SDL_bool” nie ma zakresu. Preferowany jest element „enum class” zamiast „enum” (enum.3). Project7 C:\Development\SDL2\include\SDL_rect.h 102
Błąd LNK1120 liczba nierozpoznanych elementów zewnętrznych: 1 Project7 C:\Users\zuza\source\repos\Project7\x64\Debug\Project7.exe 1
Błąd LNK2019 nierozpoznany symbol zewnętrzny __imp_CommandLineToArgvW przywołany w funkcji main_getcmdline Project7 C:\Users\zuza\source\repos\Project7\Project7\SDL2main.lib(SDL_windows_main.obj) 1
P-178165
pekfos
» 2021-02-26 18:21:30
Błąd LNK2019 nierozpoznany symbol zewnętrzny __imp_CommandLineToArgvW przywołany w funkcji main_getcmdline
Dopisz do linkera Shell32.lib.
P-178167
« 1 » 2
  Strona 1 z 2 Następna strona