Si vous souhaitez ouvrir des images JPEG
, vous devez installer libjpeg
et compiler et lier par rapport à celui-ci.
Si vous souhaitez ouvrir les images PNG
, vous devez installer libpng
et libz
(pour la compression) et les compiler et les lier par leur biais. À l'heure actuelle, vous devriez pouvoir utiliser des images au format NetPBM, c'est-à-dire PBM, PGM et PPM.
Eh bien, après deux jours douloureux d'essayer de comprendre comment la Terre Visual Studio 2017 fonctionne, et comment installer et intégrer libjpeg
avec elle, je peux maintenant vous expliquer comment installer CImg et libjpeg sur Windows.
Étape 1
Vous devez avoir Visual Studio 2017 installé, ce qui signifie que vous avez besoin Windows 7 avec SP1 ou mieux. Lors de l'installation, assurez-vous d'inclure "Windows 8.1 SDK"
Étape 2
Télécharger libjpeg
du IJG website. J'ai pris jpegsr9b.zip
car c'est le dernier.
Étape 3
Décompressez le fichier et le stocker dans un répertoire appelé libjpeg
dans votre répertoire.
Étape 4
Aller à Démarrer> Tous les programmes> Microsoft Visual Studio 2017> Visual Studio Tools> Commande développeur Demander VS2017
Accédez au répertoire que vous venez décompressé.Ce sera quelque chose comme ceci:
cd libjpeg
cd jpeg-9b
Étape 5
Maintenant, vous allez avoir besoin de trouver un fichier appelé win32.mak
. J'ai trouvé le mien en C:\Program Files\Microsoft SDKs\Windows\v7.0\Include
. Le vôtre peut être ailleurs si vous avez un SDK Windows 8.1. De toute façon, où que ce soit, vous devez ajouter son répertoire contenant à vos inclusions. Alors je l'ai fait:
set INCLUDE=%INCLUDE%;C:\Program Files\Microsoft SDKs\Windows\v7.0\Include
Étape 6 Maintenant
courir nmake
pour obtenir votre SLN - un peu bizarre "solution" Microsoft fichier. La commande est:
nmake -f makefile.vc setup-v10
et vous devriez obtenir un fichier appelé jpeg.sln
- hourra!
Étape 7
maintenant commencer Visual Studio 2017, et ouvrez le fichier jpeg.sln
vous venez de créer et de construire le projet. Il va créer un répertoire Release
dans votre répertoire libjpeg
et dans le répertoire Release
vous trouverez jpeg.lib
. Vous avez maintenant installé libjpeg
.
Étape 8
Fermer ce projet, et commencer un nouveau projet de ligne de commande C et de rédiger votre programme basé CImg. J'ai écrit le plus simple jamais:
#define cimg_use_jpeg
#include "CImg.h"
using namespace cimg_library;
int main() {
CImg<unsigned char> img("C:\\Users\\Mark\\test.jpg");
img.display("Image");
return 0;
}
Étape 9
Télécharger CImg.h
de Github, et l'enregistrer dans un répertoire appelé CImg
dans votre répertoire.
Étape 10
Maintenant dire Visual Studio où les fichiers à inclure (pour CImg
et libjpeg
) sont et où les fichiers de bibliothèque (pour libjpeg
) sont:
Etape 11
Maintenant, dites Visual Studio 2017 que vous souhaitez créer un lien avec libjpeg
:
Étape 12
Maintenant, vous pouvez compiler, lier et exécuter vos programme CImg et charger des fichiers JPEG et les afficher sur l'écran!
Si vous utilisez cmake
sur Linux/macOS, this answer vous montre le chemin.
Si vous compilez sur macOS de la ligne de commande, vous aurez besoin d'avoir XQuartz installé si vous êtes d'afficher des images sur l'écran, et vous voulez quelque chose comme ceci:
g++ -std=c++11 sample.cpp -o sample -I /opt/X11/include -L /opt/X11/lib -lX11 -ljpeg -lpng -lz
Je ne l'ai pas fait fonctionner. J'ai trouvé une version pré-compilée de libjpeg, mais une fois que je l'ai configurée, l'erreur d'origine (Echec de la reconnaissance du format du fichier) est revenue. Je suis passé à stb_image à la fin. – Alex
Désolé d'entendre ça. Quelle version de Windows utilisez-vous? Et utilisez-vous Visual Studio - si oui, quelle version? –
Communauté Windows 10 et VS2017. J'utilise également la solution C++ vide par défaut. – Alex