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

Code::Blocks Discussion :

Code::blocks et CLIB


Sujet :

Code::Blocks

  1. #1
    Membre actif
    Avatar de odsen.s
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 269
    Points : 243
    Points
    243
    Par défaut Code::blocks et CLIB
    Bonsoir,

    J'utilise l'IDE Code::Blocks pour programmer en C.
    J'aimerais utiliser les librairies CLIB avec Code::Blocks.
    J'ai téléchargé les librairies sur cette page : http://emmanuel-delahaye.developpez....theque-clib-c/
    J'ai réparti les fichiers selon l'arborescence conseillée :
    whatever/clib/ed/inc : .h, .itm

    whatever/clib/ed/src : .c
    Mais maintenant, je n'arrive pas avec Code::Block à utiliser ces dossiers.
    Où faut-il renseigner le chemin des dossiers ?

    Par avance, merci.

  2. #2
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par odsen.s
    J'utilise l'IDE Code::Blocks pour programmer en C.
    J'aimerais utiliser les librairies CLIB avec Code::Blocks.
    Pas de problèmes. Je le fais aussi !
    J'ai téléchargé les librairies sur cette page : http://emmanuel-delahaye.developpez....theque-clib-c/
    Tu veux dire les fichiers sources .h, .itm et .c. Tu as construit la bibliothèque ?
    J'ai réparti les fichiers selon l'arborescence conseillée :
    As-tu bien saisi que 'whatever' signifie 'ce que l'on veut' ou littéralement 'n'importe quoi' ?

    Chez moi (Windows XP), j'ai fait dans la simplicité, à savoir : C:/, c'est à dire que j'ai : avec les .h et les .inc
    et avec les .c
    Pour commencer, tu vas m'indiquer exactement quelle est ton installation avec les chemins complets comme j'ai montré au-dessus.
    Pas de Wi-Fi à la maison : CPL

  3. #3
    Membre actif
    Avatar de odsen.s
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 269
    Points : 243
    Points
    243
    Par défaut
    Bonsoir Emmanuel,

    Voici mon installation (Windows XP) :

    G:\clib\ed\inc contient *.h et *.inc
    G:\clib\ed\src contient *.c

    Je pense donc que j'ai réalisé la même installation que toi, mais en utilisant mon disque g (disque dur de données).


  4. #4
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par odsen.s
    G:\clib\ed\inc contient *.h et *.inc
    G:\clib\ed\src contient *.c
    Parfait. (Enfin, c'est pas *.inc, mais *.itm, comme ITEM)

    As-tu construit la bibliothèque ?
    Pas de Wi-Fi à la maison : CPL

  5. #5
    Membre actif
    Avatar de odsen.s
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 269
    Points : 243
    Points
    243
    Par défaut
    As-tu construit la bibliothèque ?
    Non, comment faut-il procéder ?

  6. #6
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par odsen.s
    Non, comment faut-il procéder ?
    Je considère que tu as tout copié et rangé bien où il faut.

    Pour Code::Blocks :
    Dans le répertoire
    G:/clib/ed créer un répertoire cb (comme Code::Blocks)

    Lancer Code::Blocks
    Créer un nouveau projet
    Sélectionner 'Static library'
    Cocher [X] Don't create any file
    Clicker sur [Create]
    Enregistrer le projet dans G:/clib/ed/cb avec le nom libed (hyper important)
    Un nouveau projet 'Static library' a dû apparaitre dans le Workspace courant.
    Click droit sur ce projet
    Properties / Title : "Static library"
    Renommer en "CLIB ED" (ce nom est purement documentaire)
    Valider (OK)
    Click droit sur le projet CLIB ED
    add files : importer tout les .c, .h et .itm des répertoires src et inc.
    Le projet doit s'enrichir de 3 sous branches appelées :
    - Sources/src : les .c
    - Headers/inc : les .h
    - Others/inc : les .itm

    Settings / Compiler / #defines
    Ajouter "BLK_ADT=1" "DBG_SYSALLOC" (sans les " " et un par ligne)

    Settings / Directories / Compiler
    Ajouter G:\clib

    Valider

    Compiler. (ignorer les warnings).

    un fichier "libed.a" a été créé en "G:\clib\ed\cb"

    Pour qu'il soit accessible à tout moment de n'importe quel projet :

    Settings / Directories / Linker
    Ajouter G:\clib\ed\cb

    Settings / Linker / Linker libraries
    Ajouter ed
    Pas de Wi-Fi à la maison : CPL

  7. #7
    Membre actif
    Avatar de odsen.s
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 269
    Points : 243
    Points
    243
    Par défaut
    Merci pour la procédure détaillée !

    Settings / Linker / Linker libraries
    Ajouter ed
    Il fallait ajouter un fichier .a
    J'ai donc ajouté libed.a.
    Ai-je bien fait ?

    Y a-t-il d'autres choses à faire ?

  8. #8
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par odsen.s
    Merci pour la procédure détaillée !

    Il fallait ajouter un fichier .a
    J'ai donc ajouté libed.a.
    Ai-je bien fait ?
    Ca devrait fonctionner avec ed à la place de libed.a (lire la doc du linker si ça t'amuse...)
    Y a-t-il d'autres choses à faire ?
    En principe non.

    Tu veux un programme d'essai ?

    Aller : nouveau projet (C) :

    main.c
    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
    26
    27
    28
    29
     
    #include "ed/inc/io.h"
     
    int main (void)
    {
       printf ("%s %s\n\n", io_sid (), io_sver ());
     
    /* mini shell */
       {
          int end = 0;
          do
          {
             char s[32];
             printf ("> ");
             fflush (stdout);
             get_s (s, sizeof s);
             if (strcmp (s, "quit") == 0)
             {
                end = 1;
             }
             else
             {
                printf ("commande '%s' inconnue\n", s);
             }
          }
          while (!end);
       }
       return 0;
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    IO (c) ED 2003-2005 1.2
     
    > qdf
    commande 'qdf' inconnue
    > qsdfqdsf
    commande 'qsdfqdsf' inconnue
    > quit
     
    Press ENTER to continue.
    Tu peux faire le test du singe, c'est incassable.

    Mon ouisiti a tapé ça :
    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    IO (c) ED 2003-2005 1.2
     
    > mlkwxjdmvlkjmvlksqdjmlkqdsjfmldskjfmdslkjfmdslkfjqdsmlkfjqsdmlfkjqsmdlfkjqdsml
    fkjqsdmlfkjqdsmflkqsjdmflkqsjfmlqskdjfmlqdskjfmlqdskjfmqdslkfjqsmdlfkjqsmldkfj
    commande 'mlkwxjdmvlkjmvlksqdjmlkqdsjfmld' inconnue
    > lmkJDEF 09FIM.?QDFG*%MQ
    commande 'lmkJDEF 09FIM.?QDFG*%MQ' inconnue
    > RFMLezr
    commande 'RFMLezr' inconnue
    > fmlqer
    commande 'fmlqer' inconnue
    > g^qerl
    commande 'g^qerl' inconnue
    > gmlg
    commande 'gmlg' inconnue
    > bnl;fg
    commande 'bnl;fg' inconnue
    > bnl;fgfg
    commande 'bnl;fgfg' inconnue
    > *n
    commande '*n' inconnue
    > *n;
    commande '*n;' inconnue
    >
    commande '' inconnue
    > gk;
    commande 'gk;' inconnue
    > gjk
    commande 'gjk' inconnue
    > gjk
    commande 'gjk' inconnue
    > gjk
    commande 'gjk' inconnue
    > gjkgjk
    commande 'gjkgjk' inconnue
    > *ùm;
    commande '*ùm;' inconnue
    > gjkùm;
    commande 'gjkùm;' inconnue
    > ghjùm
    commande 'ghjùm' inconnue
    > ghjùm
    commande 'ghjùm' inconnue
    > *ùmjh
    commande '*ùmjh' inconnue
    > m$ùl
    commande 'm$ùl' inconnue
    > ,fg^ùmlk
    commande ',fg^ùmlk' inconnue
    >
    commande '' inconnue
    >
    commande '' inconnue
    > ùm
    commande 'ùm' inconnue
    > *^p
    commande '*^p' inconnue
    > ùllp
    commande 'ùllp' inconnue
    >
    commande '' inconnue
    >
    commande '' inconnue
    >
    commande '' inconnue
    >
    Pas de Wi-Fi à la maison : CPL

  9. #9
    Membre actif
    Avatar de odsen.s
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 269
    Points : 243
    Points
    243
    Par défaut
    Super, ça fonctionne très bien.
    J'ai fait aussi d'autres petits programmes tests utilisant des fonctions de io.c, tout est ok.

    Il ne me reste plus qu'à profiter de la bibliothèque
    Merci beaucoup.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Compiler glu.h sous Code::Blocks
    Par allanp8 dans le forum OpenGL
    Réponses: 10
    Dernier message: 18/11/2007, 00h56
  2. Code blocks ajouter un .lib
    Par gl0be dans le forum Code::Blocks
    Réponses: 7
    Dernier message: 09/09/2006, 15h04
  3. [Code::Block] Traduction francaise?
    Par Zenol dans le forum Code::Blocks
    Réponses: 3
    Dernier message: 20/02/2006, 16h06
  4. [code::blocks] Completion de code
    Par anykeyh dans le forum Code::Blocks
    Réponses: 1
    Dernier message: 20/12/2005, 16h53

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