web-dev-qa-db-fra.com

SDL/SDL_image.h: Aucun fichier ou répertoire de ce type

J'essaie de suivre Les tutoriels de Lazy Foo . Mais lorsque j'essaie d'exécuter l'un de ses exemples, j'obtiens cette erreur du compilateur:

error: SDL/SDL_image.h: Aucun fichier ou répertoire de ce type

Le compilateur/éditeur de liens est configuré correctement, j'utilise Code :: Blocks sur Windows XP.

Cependant, le problème est simplement qu’il n’ya pas d’image SDL_image.h. J'ai vérifié dans le dossier qu'il aurait dû l'être. J'ai essayé de télécharger à nouveau la bibliothèque SDL et vérifié à nouveau, toujours pas de fichier SDL_image.h. Où est passé le fichier SDL_image.h?

La bibliothèque que j'ai téléchargée est le fichier "SDL-devel-1.2.14-mingw32.tar.gz" sous "Bibliothèques de développement" pour Win32 à partir de ce lien: http://www.libsdl.org/download-1.2.php

19
Knarf

Vous devez installer SDL_image séparément. Ce n'est pas livré avec SDL.

37
Piotr Praszmo

Vous devez installer la bibliothèque SDL_image comme indiqué dans les autres réponses. Si vous utilisez un système Debian, vous pouvez simplement l’installer à l’aide de la commande suivante:

Sudo apt-get install libsdl-image1.2-dev
3
razzak

Dans le troisième tutoriel de lazyfoo est complètement expliqué.

Fondamentalement, vous devez ajouter "-lSDL_image" à la ligne de compilation.

2
Alavro

j'ai eu le même problème "erreur: SDL/SDL_image.h: aucun fichier ou répertoire de ce type", j'ai résolu ceci en faisant ceci: http://wiki.codeblocks.org/index.php?title=Using_SDL_with_Code::Blocks ... regarde la photo avec le nom "Options de construction du projet" et écris des choses à l'intérieur de ces cercles rouges, dans mon cas, cela m'a aidé. Bonne chance! (désolé pour le mauvais anglais): P

1
MR. J

Dans votre cas, lorsque vous utilisez Windows, vous devez d’abord installer sdl_image, puis 

#include <SDL_image.h>

ne pas 

#include <SDL/SDL_image.h>

Si vous utilisiez linux et que votre paquet sdl-image est installé sur /usr/include/SDL, vous devez utiliser 

#include <SDL_image.h>

Dans la plupart des cas, lorsque vous installez depuis le source sous Linux. Votre colis ne peut pas être résident dans /usr/include/SDL 

Dans ce genre de situation, j'utilise 

#include <SDL/SDL_image.h>

et il fonctionne

1
kenneth odoh

Vous devez télécharger "SDL_image-devel-1.2.4-VC6.Zip" Pour les blocs de code Lien de téléchargement » http://www.libsdl.org/projects/SDL_image/release/SDL_image-devel- 1.2.4-VC6.Zip

copier les fichiers présents dans le dossier d’inclusion que vous trouverez dans le fichier Zip après extraction.Et collez-le dans C:\SDL\include\SDL dans mon cas ou dans le répertoire où se trouvent vos autres SDL * .h présent.

De même, copiez les fichiers présents dans le dossier lib du fichier Zip et collez-les dans C:\SDL\lib ou dans le dossier où se trouvent d'autres fichiers lib .. Ensuite, copiez tous les fichiers * .dll présents dans le répertoire. archiver dans C:\windows\system32 De plus, vous devez ajouter "-lSDL_image" à la ligne de compilation en ouvrant les paramètres> compilateur et débogueur> de l'éditeur de liens.

Ouvrez ensuite un projet de fichier vide et ajoutez un fichier vide au projet, puis incluez #include "SDL\SDL_image.h" J'espère que ça marche pour toi !!

Ou 

Commencez par télécharger SDL_image-devel-1.2.4-VC6.Zip à partir du lien ci-dessus et du fichier Lien Goto >> http://www.lazyfoo.net/SDL_tutorials/lesson03/windows/codeblocks/index.php pour une explication plus détaillée.

0

Pour ceux qui essaient cela, une mise à jour consisterait à ajouter "-lSDL2_image" à votre ligne de compilation. Tout le monde a simplement "-lSDL_image", qui a changé avec la sortie de SDL2. Ensuite, allez dans le bac et ajoutez tous vos fichiers .dll à System32 et vous devriez être prêts!

0
Eric F