IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques Discussion :

Tutoriel d'installation d'ImageMagick pour un IDE au choix sous linux (ubuntu)


Sujet :

Bibliothèques

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 20
    Points : 12
    Points
    12
    Par défaut Tutoriel d'installation d'ImageMagick pour un IDE au choix sous linux (ubuntu)
    Ayant pas mal galéré pour installer et utiliser imagemagick et sa librairie C "magickcore" sous linux, et pour les utiliser avec un IDE autre que la bonne vieille ligne de commande linuxienne, je me permets de poster un petit tutoriel pour ceux que ca intéresserait.

    Imagemagick (un ensemble d'outils de traitement d'images utilisables en ligne de commande, en C, C++, Java, etc...) gagnerait en effet a être utilisée, notamment du fait de sa simplicité d'utilisation en C via la librairie magickcore. Hélas, le peu de documentation claire que l'on trouve à son sujet, pourrait en décourager plus d'un, et l'installer n'est pas vraiment une mince affaire...

    Voici donc le ptit tuto en question (ici, testé avec Code::blocks et Eclipse). J'espère ne rien oublier... N'hésitez pas à émettre des remarques et commentaires si besoin :

    1) installer l'IDE de son choix (Pour code::blocks : cfr le tuto de developpez.com ou ce lien; pour Eclipse, cfr ce lien et google pour le plugin CDT pour programmer en C/C++).

    2) installer Imagemagick à partir des sources unix (avec le terminal linux, nécessite d'être l'administrateur (sudo)), comme indiqué sur le site officiel.

    ATTENTION : avant de lancer le make, vérifier les paramètres renvoyés à la fin de l'exécution du ./configure. C'est la que sont indiqués les différents paramètres d'installation, et notamment les formats d'images qui vont être pris en charge par Imagemagick.

    Il se peut que certains paquets relatifs à différents formats d'images soient nécessaires avant de poursuivre l'installation. S'il est marqué "no" à côté d'un des formats d'images (par exemple, JPEG ou PNG) que vous voulez utiliser, il faut relancer le configure avec l'option adéquate pour activer la reconnaissance de ce format d'image par Imagemagick (par exemple ajouter l'option "--with-jpeg=yes" pour le JPEG, ce qui donne la commande "./configure --with-jpeg=yes"). Si l'utilisation de cette option ne change rien au rapport du configure, il faut télécharger le paquet .dev relatif au format d'image souhaité, via le gestionnaire de paquets synaptic. Pour exemple, le paquet pour png s'appelle libpngXX-dev et celui de jpeg : libjpegXX-dev,... où le XX correspond à la version du paquet.

    Après avoir téléchargé le paquet en question, réexécuter le ./configure avec la/les options voulues.

    3) après avoir utilisé la commande ./configure avec les options souhaitées, continuer l'installation indiquée sur le site officiel (jusqu'au "make install").

    4) encore via gestionnaire synaptic, installer le paquet libmagickX-dev (X = n° de version). Voila ! Imagemagick est (enfin) installé !

    Vous pouvez à présent utiliser Imagemagick et notamment la librairie magickcore en commande linux. Vous pouvez également programmer en C/C++ en invoquant le compilateur gcc via cette même ligne de commande (cfr l'exemple et la commande à utiliser indiqués sur cette page.).

    Comme il peut s'avérer plus pratique d'utiliser un IDE plutôt que le terminal linux, voici la démarche à suivre pour utiliser magickcore sous code::blocks et Eclipse.

    Pour code::blocks :

    1) Aller dans "Settings->Compiler and Debugger

    2) sous l'onglet "Compiler Settings", aller dans "Other options", et copier la ligne suivante (cfr figure) :

    `MagickCore-config --cflags --cppflags`




    3) sous l'onglet "Linker settings", copier la commande suivante dans "Other linker options" (cfr figure) :

    `MagickCore-config --ldflags --libs`




    ATTENTION !
    les symboles " ` " ne correspondent pas à une simple apostrophe, mais à une apostrophe oblique présente sur une autre touche du clavier ! Il est important d'utiliser ce symbole sinon la compilation plantera.

    Voila pour la compilation sous code::blocks ! N'oubliez pas d'inclure un petit #include <magick/MagickCore.h> la où vous désirez utiliser les méthodes de magickcore


    Pour Eclipse

    1) Aller dans "Project->Properties"

    2) Dans la colonne de gauche, cliquer sur "C/C++ Build"

    3) Dans l'onglet "Tool Settings", cliquer sur "GCC/C compiler"

    4) dans l'invite de commande "Command", taper la commande suivante (ATTENTION, cfr note sur la synthaxe de l'apostrophe ci-dessus !) :

    cc `MagickCore-config --cflags --cppflags`



    5)

    Toujours dans l'onglet "Tool Settings", cliquer sur "GCC/C linker"


    6) dans l'invite de commande "Command", taper la commande suivante :

    cc `MagickCore-config --ldflags --libs`



    Voila, vous pouvez dès à présent compiler votre projet. Il reste cependant une petite manipulation à faire pour pouvoir l'exécuter sans problème :

    7) Pour exécuter un projet, aller dans "Run->Run..."

    8) Dans la colonne de gauche, cliquer 2 fois sur "C/C++ local application". Cela devrait avoir pour effet de créer une application C/C++ du même nom que celui de votre projet en cours. Cliquez 1 fois dessus si elle n'est pas déja en surbrillance.

    9) A droite de l'invite de commande "C/C++ Application", cliquez sur "Search Project", sélectionnez le projet en cours et cliquez sur "ok". La fenetre de sélection devrait se fermer et un chemin d'accès du type "Debug/mon_projet" devrait être inscrit dans l'invite de commande "C/C++ Application".



    10) cliquez sur "Run" pour exécuter votre programme

    N.B; : comme dit plus haut, n'oubliez pas d'inclure un petit #include <magick/MagickCore.h> la où vous désirez utiliser les méthodes de magickcore

    Voila, j'espère avoir été assez clair, et que ce post pourra servir à la communauté

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Points : 31
    Points
    31
    Par défaut
    Cool, génial Beavis, je cherchais précisément à faire cela, mais je n'y arrivais pas.

    Super tuto!!! T'es une star

  3. #3
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par Beavis Voir le message
    Voila, j'espère avoir été assez clair, et que ce post pourra servir à la communauté
    Surement .
    Je vais voire avec les autres modérateur

  4. #4
    Candidat au Club
    Inscrit en
    Août 2009
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    bien que ce post soit vieux d'un an, je vous présente mon problème : j'utilise code::blocks sur ubuntu 8.10, et j'ai été confronté au même problème d'erreur "undefined reference to `fonctiontrucmuche'" décrit par l'auteur du premier message dans son post original.

    J'ai donc installé ImageMagick selon ses indications et configuré code::blocks.

    Malheureusement, je suis maintenant confrontré à plus de 50 erreurs de la forme :

    "/usr/include/Magick++/Include.h|110|error: ‘MagickLib::Quantum’ has not been declared|"


    quelqu'un aurait-il une idée pour régler ce problème ? A dire vrai, mon code n'a pas bcp d'importance puisqu'il s'agit d'un code basique pour tester ImageMagick.

    D'avance merci !

  5. #5
    Candidat au Club
    Inscrit en
    Août 2009
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Le problème est résolu - semble-t-il :

    je devais utiliser Magick++-config au lieu de MagickCore-config lors de la configuration de code::blocks !

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2017
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonsoir,
    Désolé de déterrer ce topic mais est-ce que quelqu'un a réussi à utiliser Magick++ sur Code::Blocks sous Windows ? Car je galère depuis plusieurs jours à essayer de le faire marcher...

    Merci d'avance !

Discussions similaires

  1. Réponses: 5
    Dernier message: 02/07/2009, 20h54
  2. Comment installer un serveur mail (smtp), sous linux ubuntu(en ayan pour f.a.i neuf)?
    Par Invité dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 28/01/2009, 15h24
  3. Interface graphique pour projet gtk en C sous Linux
    Par troumad dans le forum GTK+ avec C & C++
    Réponses: 8
    Dernier message: 12/02/2007, 13h28
  4. Réponses: 5
    Dernier message: 05/01/2007, 21h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo