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 :

problème de linker sur ncurses


Sujet :

C

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2011
    Messages : 25
    Points : 18
    Points
    18
    Par défaut problème de linker sur ncurses
    Bonjour,

    je suis sous linux, et je veux coder un petit programme en utilisant l'API ncurses. Mon problème c'est que le compilateur ne connait pas l'emplacement des fonctions ncurses comme initscr(), printw() .... par exemple je reçoit un message d'erreur du type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    undefined reference to: initscr()

    j'ai inclus #define <ncurses.h> , mais il s'avère qu'il n'arrive pas a joindre les autres fichier tel que glib.h ...etc
    en cherchant sur google,j'ai trouvé la solution de ce problème, il suffit de taper en console :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gcc -o testncurses.o -lncurses testncurses.c
    mais je reçoit cette erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gcc: erreur: testncurses.c: Aucun fichier ou dossier de ce type

    merci pour votre aide

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 577
    Points
    218 577
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Votre problème actuel, c'est qu'il ne trouve pas votre fichier de code source. Êtes vous bien dans le bon dossier, lorsque vous tapez la commande ?
    Ou encore, quel éditeur utilisez vous habituellement ?
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2011
    Messages : 25
    Points : 18
    Points
    18
    Par défaut
    Je travail sur code::blocks , j'ai suivis a la lettre ce tutoriel : http://tldp.org/HOWTO/NCURSES-Progra...WTO/index.html , dans ses programmes, l'auteur n'inclut que #include<ncurses.h> , chez moi ça ne marche pas. Dois-je reconfigurer le linker ?

  4. #4
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2011
    Messages : 25
    Points : 18
    Points
    18
    Par défaut
    voila je me suis positionné dans le bon dossier, mon fichier s'appelle main.c
    en exécutant la commande suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gcc -o main.o -lncurses main.c
    je reçoit cette liste d'erreurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    /tmp/cctxc1FR.o: In function `main':
    main.c:(.text+0xa): undefined reference to `initscr'
    main.c:(.text+0x16): undefined reference to `printw'
    main.c:(.text+0x1b): undefined reference to `stdscr'
    main.c:(.text+0x23): undefined reference to `wrefresh'
    main.c:(.text+0x28): undefined reference to `stdscr'
    main.c:(.text+0x30): undefined reference to `wgetch'
    main.c:(.text+0x35): undefined reference to `endwin'
    collect2: ld a retourné 1 code d'état d'exécution

  5. #5
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 577
    Points
    218 577
    Billets dans le blog
    120
    Par défaut
    Essayez la commande
    gcc -o main.o main.c -lncurses
    Sinon, dans Code::Blocks, dans les propriété du projet, dans "Bibliothèque additionnelles" (ou un truc du genre) vous devez rajouter ncurses et comme ça, vous pourrez compiler avec Code::Blocks. Voir: http://cpp.developpez.com/faq/cb/?page=3#19
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  6. #6
    Membre éprouvé
    Avatar de f-k-z
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Juin 2006
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2006
    Messages : 403
    Points : 928
    Points
    928
    Par défaut
    Ploplop,

    dans un premier temps tu peux tester la commande de LittleWhite. Selon les versions de GCC, il faut mettre à la fin les librairies car le compilateur ne cherche dedans que les fonctions trouvées dans les fichiers précédents.

    sinon peux tu me dire ce que renvoit la commande Il faut peut être adapter pour le nom exact en ncurses4-config ou un truc du genre (mais la touche tab est là pour compléter une fois que tu as tapé ncurses )

    ++

    fiki
    GNU/Linux c'est une question de VI ou de MORE.
    http://www.goodbye-microsoft.com
    "Linux is user friendly, its just very selective of its friends*", m'enfou, je suis son pote :p

    Un post vous est utile ou est constructif, ayez le réflexe du +1 pour le contributeur ( C'est gratuit et ça donne l'impression d'être utile :p )
    Le tag et la ne sont pas fait que pour le décor, pensez-y !
    R.I.P. F-k-z 13/06/2006 - 12/10/2011
    *Linux est convivial, il est juste très sélectifs pour ses amis.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2011
    Messages : 25
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par f-k-z Voir le message
    Ploplop,

    dans un premier temps tu peux tester la commande de LittleWhite. Selon les versions de GCC, il faut mettre à la fin les librairies car le compilateur ne cherche dedans que les fonctions trouvées dans les fichiers précédents.

    sinon peux tu me dire ce que renvoit la commande Il faut peut être adapter pour le nom exact en ncurses4-config ou un truc du genre (mais la touche tab est là pour compléter une fois que tu as tapé ncurses )

    ++

    fiki
    voici le résultat de la commande que vous m'avez indiquer :
    Mais je n'ai pas bien compris ce que vous m'avez dis a propos de LittleWhite, comment y procéder ?
    merci

  8. #8
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2011
    Messages : 25
    Points : 18
    Points
    18
    Par défaut
    Merci de m'aider les amis, je compte sur vous

  9. #9
    Membre éprouvé
    Avatar de f-k-z
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Juin 2006
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2006
    Messages : 403
    Points : 928
    Points
    928
    Par défaut
    bonsoir,

    Désolé pour la réponse tardive, mais petit contretemps.
    Donc comme je le disais précédement, tente une compilation avc la méthode indiquée par LittleWhite:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gcc -o main.o main.c -lncurses
    Car selon la version de gcc il faut spécifier les librairies à utiliser après les fichiers les utilisants.
    si ça ne passe toujours pas, peux tu nous fournir tes fichiers sources complets, des détails sur ton système d'exploitation et ta version de gcc

    ++

    Fiki
    GNU/Linux c'est une question de VI ou de MORE.
    http://www.goodbye-microsoft.com
    "Linux is user friendly, its just very selective of its friends*", m'enfou, je suis son pote :p

    Un post vous est utile ou est constructif, ayez le réflexe du +1 pour le contributeur ( C'est gratuit et ça donne l'impression d'être utile :p )
    Le tag et la ne sont pas fait que pour le décor, pensez-y !
    R.I.P. F-k-z 13/06/2006 - 12/10/2011
    *Linux est convivial, il est juste très sélectifs pour ses amis.

Discussions similaires

  1. Problème de reqûete sur la date, année et mois en cours
    Par Jean-Marc dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 16/02/2004, 16h36
  2. [CR] Problème de sélection sur un champ date
    Par noluc dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 21/11/2003, 16h56
  3. Problème avec RDTSC sur K6-III
    Par le mage tophinus dans le forum x86 32-bits / 64-bits
    Réponses: 17
    Dernier message: 30/09/2003, 09h43
  4. problème de float sur SQL server 2000.
    Par fidji dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 24/07/2003, 14h15
  5. [Debutant] Problème du linker [Dev-c++4]
    Par Macdir dans le forum Dev-C++
    Réponses: 3
    Dernier message: 30/05/2003, 20h50

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