Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 13/11/2019, à 19:23

chris7522

SDL2 installation

Bonjour a toutes et a tous ,
J'ai suivi quelques tutos pour installer sdl2 , soit je m'y prend comme un manche ou soit les tutos en question date un peu et ne sont plus trop d'actualité . Je suis sur Ubuntu 18.04.3 LTS .
J'ai essayé un certain nombre de chose a droite a gauche , mais j'ai pas l'impression que j'ai fais les choses comme il faut .
  Lorsque je compile ceci avec gcc :

#include <SDL.h>
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
 SDL_Window *window=NULL;
 if(SDL_Init(SDL_INIT_VIDEO)!=0)
 {
  SDL_Log("ERREUR : Initialisation SDL > %s\n",SDL_GetError());
  exit(EXIT_FAILURE);
 }
 window=SDL_CreateWindow("Première fenetre SDL 2",
                         SDL_WINDOWPOS_CENTERED,
                         SDL_WINDOWPOS_CENTERED,800,600,0);
 if(window==NULL)
 {
  SDL_Log("ERREUR : Creation fenetre echouée > %s\n",SDL_GetError());
  exit(EXIT_FAILURE);


 SDL_Quit();
 return EXIT_SUCCESS;

J'obtiens cela :

chris@mlp:~/Bureau/sdl$ gcc sdl1.c -o sdl1C
sdl1.c:1:10: fatal error: SDL.h: Aucun fichier ou dossier de ce type
 #include <SDL.h>
          ^~~~~~~
compilation terminated.

Merci de votre aide

Hors ligne

#2 Le 13/11/2019, à 20:21

NicoApi73

Re : SDL2 installation

Bonjour,

#include <SDL2/SDL.h>

Hors ligne

#3 Le 13/11/2019, à 20:46

chris7522

Re : SDL2 installation

Merci de ton aide . J'ai rajouté ce que tu me dis , et cette fois , apres ca :

#include <SDL2/SDL.h>
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
 SDL_Window *window=NULL;
 if(SDL_Init(SDL_INIT_VIDEO)!=0)
 {
  SDL_Log("ERREUR : Initialisation SDL > %s\n",SDL_GetError());
  exit(EXIT_FAILURE);
 }
 window=SDL_CreateWindow("Première fenetre SDL 2",
                         SDL_WINDOWPOS_CENTERED,
                         SDL_WINDOWPOS_CENTERED,800,600,0);
 if(window==NULL)
 {
  SDL_Log("ERREUR : Creation fenetre echouée > %s\n",SDL_GetError());
  exit(EXIT_FAILURE);
 }

 SDL_Quit();
 return EXIT_SUCCESS;
}

J'obtiens ceci :

chris@mlp:~/Bureau/sdl$ gcc sdl1.c -o sdl1C
/tmp/ccqpRzPD.o : Dans la fonction « main » :
sdl1.c:(.text+0x16) : référence indéfinie vers « SDL_Init »
sdl1.c:(.text+0x1f) : référence indéfinie vers « SDL_GetError »
sdl1.c:(.text+0x33) : référence indéfinie vers « SDL_Log »
sdl1.c:(.text+0x64) : référence indéfinie vers « SDL_CreateWindow »
sdl1.c:(.text+0x74) : référence indéfinie vers « SDL_GetError »
sdl1.c:(.text+0x88) : référence indéfinie vers « SDL_Log »
sdl1.c:(.text+0x97) : référence indéfinie vers « SDL_Quit »
collect2: error: ld returned 1 exit status

Hors ligne

#4 Le 13/11/2019, à 20:56

NicoApi73

Re : SDL2 installation

Il te manque les liens vers la librairie SDL pour le link.

EDIT :

gcc sdl1C.c -o sdl1C -lSDL2

Il est préférable que tu fasses un Makefile

Dernière modification par NicoApi73 (Le 13/11/2019, à 21:58)

Hors ligne

#5 Le 13/11/2019, à 22:30

chris7522

Re : SDL2 installation

Merci beaucoup ! Ca fonctionne avec -lSDL2 a chaque compilation . Ce serai plus pratique avec un Makefile sauf que je n'ai jamais  fais ce genre de chose et que je ne sais pas du tout comment faire .

Hors ligne

#6 Le 13/11/2019, à 22:42

NicoApi73

Re : SDL2 installation

Il va bien falloir que tu y passes, d'une manière ou d'une autre. Au stade où tu en es, il va falloir commencer à structurer ton code et utiliser différents fichiers, y compris des headers.

Hors ligne

#7 Le 13/11/2019, à 22:56

chris7522

Re : SDL2 installation

Ce n'est pas ce qu'on appelle la programmation modulaire ? Serai-je obligé alors d'utiliser un IDE ?

Hors ligne

#8 Le 14/11/2019, à 02:01

NicoApi73

Re : SDL2 installation

L'utilisation d'un IDE n'est pas nécessaire. La plupart des IDE gèrent à leur manière un Makefile.

Hors ligne