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

C++ Discussion :

Ajout et utilisation librairie(exemple simple)


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Apprenti
    Inscrit en
    Décembre 2010
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti

    Informations forums :
    Inscription : Décembre 2010
    Messages : 86
    Par défaut Ajout et utilisation librairie(exemple simple)
    Bonjour,

    suite à mon précédent message, j'ai cherché dans de multiples cours sur internet pour savoir comment ajouter et utiliser une librairie en C++. Et je n'ai pas trouvé. Par exemple, dans ce cours :

    http://sites.univ-provence.fr/cpp/V1/lecons.htm

    En particulier, j'ai vraiment besoin d'avoir un modèle (idéalement avec l'exemple du pgcd : je précise à nouveau, que je ne souhaite pas reprogrammer l'algo. pour trouver le pgcd mais mais utiliser une librairie existante afin de savoir comme ajouter et utiliser et librairie)

    Merci pour toute aide concrète.

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 533
    Par défaut
    Généralement, c'est plutôt le distributeur de la librairie en question qui explique comment installer sa lib à lui. Exemple avec Boost, le couteau-suisse du C++ qui fournit pas mal de fonctions mathématiques :

    1) Télécharge et extrait Boost dans c:\boost

    2) Ajout le chemin « c:\boost» à ton projet
    Comment le faire dépendra de ton environnement de développement : Visual C++, Code::Blocks, Makefile ?

    3) En te basant sur la doc, écrit un code de ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    #include <iostream>
    #include <boost/math/common_factor.hpp>
    int main() {
      std::cout << boost::math::gcd(24, 42) << std::endl;
      return 0;
    }
    Et c'est tout.

    Comme souvent dans Boost il n'y a pas besoin de DLL "tierce", tout est compris dans les headers. Donc pas besoin d'informer ton linker sur des .LIB/.DLL supplémentaires (étape qui, là encore, dépend de ton EDD).

  3. #3
    Membre confirmé
    Homme Profil pro
    Apprenti
    Inscrit en
    Décembre 2010
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti

    Informations forums :
    Inscription : Décembre 2010
    Messages : 86
    Par défaut
    Je travaille sous linux. Dois-je alors adapter certaines choses en conséquence ?

    Je travaille simplement avec gedit sous linux

    Pour préciser ma question, vous disiez dans votre message :

    1) Télécharge et extrait Boost dans c:\boost

    2) Ajout le chemin « c:\boost» à ton projet
    Comment le faire dépendra de ton environnement de développement : Visual C++, Code::Blocks, Makefile ?
    , et n'étant pas un expert de linux, je souhaitais savoir si je devais ajouter quelque chose de particulier, étant donné que je travaille sous linux, ou bien y'a-t-il une manipulation particulière à faire ?

    Merci d'avance.

  4. #4
    Membre confirmé
    Homme Profil pro
    Apprenti
    Inscrit en
    Décembre 2010
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti

    Informations forums :
    Inscription : Décembre 2010
    Messages : 86
    Par défaut
    Pour comprendre comment utiliser la doc, Je tente d'utiliser la doc, et d' exécuter le programme qui y est proposé, c'est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    #include <boost/math/common_factor.hpp>
    #include <algorithm>
    #include <iterator>
     
     
    int main()
    {
       using std::cout;
       using std::endl;
     
       cout << "The GCD and LCM of 6 and 15 are "
       << boost::math::gcd(6, 15) << " and "
       << boost::math::lcm(6, 15) << ", respectively."
       << endl;
     
       cout << "The GCD and LCM of 8 and 9 are "
       << boost::math::static_gcd<8, 9>::value
       << " and "
       << boost::math::static_lcm<8, 9>::value
       << ", respectively." << endl;
     
       int  a[] = { 4, 5, 6 }, b[] = { 7, 8, 9 }, c[3];
       std::transform( a, a + 3, b, c, boost::math::gcd_evaluator<int>() );
       std::copy( c, c + 3, std::ostream_iterator<int>(cout, " ") );
    }
    mais à la compilation,j'ai le message d'erreur :

    error: ‘boost’ has not been declared


    Je travaille avec gedit , donc à priori , je ne sais comment ajouter le lien de boost à mon petit projet.

    merci de votre aide.

  5. #5
    Membre Expert Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    Août 2004
    Messages
    2 366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Août 2004
    Messages : 2 366
    Par défaut
    tu dois ajouter le chemin de boost dans ton makefile

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 533
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INCLUDEPATH += /usr/local/boost/
    ou un truc du genre.
    Tu es sous Linux, tu as donc installé boost avec sudo apt-get install boost-dev ou quelque chose comme ça ?

  7. #7
    Membre confirmé
    Homme Profil pro
    Apprenti
    Inscrit en
    Décembre 2010
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti

    Informations forums :
    Inscription : Décembre 2010
    Messages : 86
    Par défaut
    Bonjour,

    en fait, je n'ai pas de Makefile.

    Pour tout vous dire(je ne sais pas s'il faut que je change ma façon de faire), j'ai recopié le fichier d'example que j'ai suffixé avec .cpp

    Ce fichier est sur le Bureau.

    Puis , comme suggéré dans le "fil", j'ai téléchargé "boost" sur le Bureau, je l'ai extrait sur le "Bureau".

    Et c'est alors que j'ai ouvert un terminal et j'écris : g++ nomdufichier.cpp et c'est alors que j'ai le message d'erreur que je viens de vous rappeler : "boost has not been declared"

    Que dois-je faire ?

    merci

  8. #8
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 533
    Par défaut
    Lis la doc Boost pour savoir comment compiler/tester un exemple :
    http://www.boost.org/doc/libs/1_52_0...-variants.html

    Et essaie plutôt d'installer Boost via ton gestionnaire de paquets, comme ce n'est pas dit très explicitement dans la doc.

Discussions similaires

  1. Où trouver un exemple simple pour ajouter une fenêtre ?
    Par SuperSeb95 dans le forum Débuter
    Réponses: 3
    Dernier message: 26/05/2011, 08h50
  2. Recherche d'un exemple simple d'utilisation de MADS editor
    Par fedjo dans le forum SIG : Système d'information Géographique
    Réponses: 0
    Dernier message: 25/01/2011, 09h48
  3. [HTML 5] Exemple simple d'utilisation du offline
    Par greg69x dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 09/04/2010, 14h36
  4. Recherche d'un exemple simple d'utilisation d'une signature
    Par rambc dans le forum Général Python
    Réponses: 2
    Dernier message: 26/04/2009, 20h33
  5. Exemple simple utilisant le repository pattern
    Par Arthis dans le forum ASP.NET
    Réponses: 6
    Dernier message: 04/11/2008, 11h24

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