C++ SDL - Pomoc pri inštalácii – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

C++ SDL - Pomoc pri inštalácii – C / C++ – Fórum – Programujte.comC++ SDL - Pomoc pri inštalácii – C / C++ – Fórum – Programujte.com

 

Sigma
~ Anonymní uživatel
6 příspěvků
20. 2. 2016   #1
-
0
-

Zdravím,chcel by som stiahnuť knižnicu SDL pre C++,v minulosti som to už párkrát skúšal,no neúspešne,pretože vždy mi to vyhadzovalo chyby a celé to prostredie už bolo zle nastavené.Teraz by som to však chcel spraviť hneď na prvýkrát,skúšal som už x návodov aj na YT aj na Googli,avšak väčšina už je starých,taktiež by som chcel vedieť ktorá verzia Visual Studia je "vhodná" (ak na tom vôbec záleží) a či stačí Express alebo plná verzia.Ďakujem :-) 

Nahlásit jako SPAM
IP: 78.98.11.–
BDS
~ Anonymní uživatel
753 příspěvků
20. 2. 2016   #2
-
0
-

1. úplně postačí i verze Express, ale pokud nemáš nainstalováno, tak můžu doporučit i Community (na verzi nazáleží).

2. stáhneš toto: https://www.libsdl.org/release/SDL2-devel-2.0.4-VC.zip

3. rozbalíš a nakopíruješ soubory ze složky: 

include do C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include

lib do C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib

4. hotovo. (do složky k programu pak vždy přidáš "SDL2.dll", je obsažen ve staženém *.zipu)

Nahlásit jako SPAM
IP: 185.69.69.–
BDS
~ Anonymní uživatel
753 příspěvků
20. 2. 2016   #3
-
0
-

Jo a ještě nastavení projektu:

do Linker->Advanced nastavit na main

do Linker->Additional Depencies přidat: SDL2.lib;SDL2main.lib;

Nahlásit jako SPAM
IP: 185.69.69.–
BDS+3
Věrný člen
Nahlásit jako SPAM
IP: 185.69.69.–
W11 :)
Sigma
~ Anonymní uživatel
6 příspěvků
20. 2. 2016   #5
-
0
-

Dakujem za radu,rozhodol som sa vyskusat ten VS Community 2015,akurat mam jednu otazku ,pretoze pri instalacii sa ma pyta ,"Aky typ instalacie chcem" ,ci Default alebo Custom,akurat nie som si isty ci Default obsahuje aj C++ .Obrazok s moznostami je po rozliknuti Custom
 

Připojen obrázek.

Připojen obrázek.

Nahlásit jako SPAM
IP: 78.98.11.–
BDS+3
Věrný člen
21. 2. 2016   #6
-
0
-

#5 Sigma
klidně zvol custom a můžeš pozaškrtávat něco navíc (jestli se ti bude něco hodit). Pokud nic navíc nezaškrtneš, tak se ti nainstaluje vlastně default. Pokud nevíš co zaškrtnout, tak zaškrtni vše co v názvu neobsahuje [3rd Party] (někdy se může hodit mít i po ruce jiné programovací jazyky a nástroje), sice to zabere trochu víc místa na disku a nějaký čas instalace, ale určitě ti nebude nic chybět (pokud ano, můžeš dodatečně něco doinstalovat).

Pro tebe bude asi dobré zaškrknout vše co obsahuje v názvu C++ (kromě 3rd party)

ps, Já vždy pokud něco instaluju tak volím custom, člověk vidí jaké jsou vlastně možnosti.

Nahlásit jako SPAM
IP: 185.69.69.–
W11 :)
Sigma
~ Anonymní uživatel
6 příspěvků
21. 2. 2016   #7
-
0
-

Nejako som to poskladal,teraz skusam pustit nejake kody,ze ci to vobec funguje,okno mi v pohode vytvorilo,skusam ale uz stlacanie klaves a hadze mi tu nejake chyby ..najskor kod
 

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




/* Function Prototypes */
void PrintKeyInfo(SDL_KeyboardEvent *key);
void PrintModifiers(SDLMod mod);

/* main */
int main(int argc, char *argv[]) {

	SDL_Event event;
	int quit = 0;

	/* Initialise SDL */
	if (SDL_Init(SDL_INIT_VIDEO) < 0) {
		fprintf(stderr, "Could not initialise SDL: %s\n", SDL_GetError());
		exit(-1);
	}

	/* Set a video mode */
	if (!SDL_SetVideoMode(320, 200, 0, 0)) {
		fprintf(stderr, "Could not set video mode: %s\n", SDL_GetError());
		SDL_Quit();
		exit(-1);
	}

	/* Enable Unicode translation */
	SDL_EnableUNICODE(1);

	/* Loop until an SDL_QUIT event is found */
	while (!quit) {

		/* Poll for events */
		while (SDL_PollEvent(&event)) {

			switch (event.type) {
				/* Keyboard event */
				/* Pass the event data onto PrintKeyInfo() */
			case SDL_KEYDOWN:
			case SDL_KEYUP:
				PrintKeyInfo(&event.key);
				break;

				/* SDL_QUIT event (window close) */
			case SDL_QUIT:
				quit = 1;
				break;

			default:
				break;
			}

		}

	}

	/* Clean up */
	SDL_Quit();
	exit(0);
}

/* Print all information about a key event */
void PrintKeyInfo(SDL_KeyboardEvent *key) {
	/* Is it a release or a press? */
	if (key->type == SDL_KEYUP)
		printf("Release:- ");
	else
		printf("Press:- ");

	/* Print the hardware scancode first */
	printf("Scancode: 0x%02X", key->keysym.scancode);
	/* Print the name of the key */
	printf(", Name: %s", SDL_GetKeyName(key->keysym.sym));
	/* We want to print the unicode info, but we need to make */
	/* sure its a press event first (remember, release events */
	/* don't have unicode info                                */
	if (key->type == SDL_KEYDOWN) {
		/* If the Unicode value is less than 0x80 then the    */
		/* unicode value can be used to get a printable       */
		/* representation of the key, using (char)unicode.    */
		printf(", Unicode: ");
		if (key->keysym.unicode < 0x80 && key->keysym.unicode > 0) {
			printf("%c (0x%04X)", (char)key->keysym.unicode,
				key->keysym.unicode);
		}
		else {
			printf("? (0x%04X)", key->keysym.unicode);
		}
	}
	printf("\n");
	/* Print modifier info */
	PrintModifiers(key->keysym.mod);
}

/* Print modifier info */
void PrintModifiers(SDLMod mod) {
	printf("Modifers: ");

	/* If there are none then say so and return */
	if (mod == KMOD_NONE) {
		printf("None\n");
		return;
	}

	/* Check for the presence of each SDLMod value */
	/* This looks messy, but there really isn't    */
	/* a clearer way.                              */
	if (mod & KMOD_NUM) printf("NUMLOCK ");
	if (mod & KMOD_CAPS) printf("CAPSLOCK ");
	if (mod & KMOD_LCTRL) printf("LCTRL ");
	if (mod & KMOD_RCTRL) printf("RCTRL ");
	if (mod & KMOD_RSHIFT) printf("RSHIFT ");
	if (mod & KMOD_LSHIFT) printf("LSHIFT ");
	if (mod & KMOD_RALT) printf("RALT ");
	if (mod & KMOD_LALT) printf("LALT ");
	if (mod & KMOD_CTRL) printf("CTRL ");
	if (mod & KMOD_SHIFT) printf("SHIFT ");
	if (mod & KMOD_ALT) printf("ALT ");
	printf("\n");
}

vypis z Buildu

1>------ Build started: Project: ConsoleApplication1, Configuration: Debug Win32 ------
1>  ConsoleApplication1.cpp
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(10): error C2065: 'SDLMod': undeclared identifier
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(10): error C2146: syntax error: missing ')' before identifier 'mod'
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(25): error C3861: 'SDL_SetVideoMode': identifier not found
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(32): error C3861: 'SDL_EnableUNICODE': identifier not found
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(86): error C2039: 'unicode': is not a member of 'SDL_Keysym'
1>  c:\users\pet\downloads\sdl2-2.0.4\include\sdl_keyboard.h(48): note: see declaration of 'SDL_Keysym'
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(87): error C2039: 'unicode': is not a member of 'SDL_Keysym'
1>  c:\users\pet\downloads\sdl2-2.0.4\include\sdl_keyboard.h(48): note: see declaration of 'SDL_Keysym'
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(88): error C2039: 'unicode': is not a member of 'SDL_Keysym'
1>  c:\users\pet\downloads\sdl2-2.0.4\include\sdl_keyboard.h(48): note: see declaration of 'SDL_Keysym'
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(91): error C2039: 'unicode': is not a member of 'SDL_Keysym'
1>  c:\users\pet\downloads\sdl2-2.0.4\include\sdl_keyboard.h(48): note: see declaration of 'SDL_Keysym'
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(96): error C3861: 'PrintModifiers': identifier not found
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(100): error C2065: 'SDLMod': undeclared identifier
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(100): error C2146: syntax error: missing ')' before identifier 'mod'
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(100): error C2143: syntax error: missing ';' before '{'
1>c:\users\pet\documents\visual studio 2015\sdl\consoleapplication1\consoleapplication1\consoleapplication1.cpp(100): error C2447: '{': missing function header (old-style formal list?)
Nahlásit jako SPAM
IP: 78.98.11.–
Sigma
~ Anonymní uživatel
6 příspěvků
21. 2. 2016   #8
-
0
-

Este jeden pripad,k tomuto kodu 
 

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




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, 640,480, SDL_WINDOW_SHOWN);
		if (window == NULL)
		{
			printf("Window could not be created! SDL_Error: %s\n", SDL_GetError());
		}
		else
		{
			//Get window surface
			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(2000);
		}
	}
	//Destroy window
	SDL_DestroyWindow(window);

	//Quit SDL subsystems
	SDL_Quit();

	return 0;
}

vypis:
 

Nahlásit jako SPAM
IP: 78.98.11.–
Sigma
~ Anonymní uživatel
6 příspěvků
21. 2. 2016   #9
-
0
-

Sorry,vypis:
 

'ConsoleApplication1.exe' (Win32): Loaded 'C:\Users\Pet\Documents\Visual Studio 2015\SDL\ConsoleApplication1\Debug\ConsoleApplication1.exe'. Symbols loaded.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\ntdll.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\kernel32.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\KernelBase.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Users\Pet\Documents\Visual Studio 2015\SDL\ConsoleApplication1\ConsoleApplication1\SDL2.dll'. Module was built without symbols.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\gdi32.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\user32.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\lpk.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\usp10.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\msvcrt.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\imm32.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\msctf.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\ole32.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\rpcrt4.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\oleaut32.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\shell32.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\shlwapi.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\version.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\winmm.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\msvcp140d.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\vcruntime140d.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\ucrtbased.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\api-ms-win-core-timezone-l1-1-0.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\api-ms-win-core-file-l2-1-0.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\api-ms-win-core-localization-l1-2-0.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\api-ms-win-core-synch-l1-2-0.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\api-ms-win-core-processthreads-l1-1-1.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\api-ms-win-core-file-l1-2-0.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\advapi32.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\sechost.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\uxtheme.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\dwmapi.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\cryptbase.dll'. Cannot find or open the PDB file.
'ConsoleApplication1.exe' (Win32): Loaded 'C:\Windows\System32\clbcatq.dll'. Cannot find or open the PDB file.
The program '[3156] ConsoleApplication1.exe' has exited with code 0 (0x0).
Nahlásit jako SPAM
IP: 78.98.11.–
BDS
~ Anonymní uživatel
753 příspěvků
21. 2. 2016   #10
-
0
-
Nahlásit jako SPAM
IP: 185.69.69.–
BDS+3
Věrný člen
21. 2. 2016   #11
-
0
-
Nahlásit jako SPAM
IP: 185.69.69.–
W11 :)
Sigma
~ Anonymní uživatel
6 příspěvků
21. 2. 2016   #12
-
0
-

Aha,dik :-))

Nahlásit jako SPAM
IP: 78.98.11.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 46 hostů

Podobná vlákna

Problem pri praci s SDL grafikou — založil jeremy2001

Pomoc pri pascale — založil liska11

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý