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

Dev-C++ Discussion :

Librairie Regex - Linker error


Sujet :

Dev-C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 15
    Par défaut Librairie Regex - Linker error
    Bonjour,

    j'essaye d'utiliser la librairie GNU regex. Pour cela, j'ai telecharge les sources et j'ai compile la lib statique sous Dev-c++ afin de creer mon libregex.a

    Le probleme est que je n'arrive pas a le linker a mon projet.
    Dans les options du projet, j'ai mis :
    Parametres > Editeurs de liens > -lregex
    Repertoires > Repertoires Biblio : le dossier ou se trouve le libregex.a

    Mais j'ai toujours l erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [Linker error] undefined reference to `regcomp(rx_posix_regex *, char const *, int)'
    Ai-je oublie quelquechose ? Merci d'avance

    PS : j ai aussi essaye avec le devpack Rx http://devpaks.org/details.php?devpak=67 mais j ai la meme erreur

  2. #2
    HRS
    HRS est déconnecté
    Membre chevronné
    Avatar de HRS
    Inscrit en
    Mars 2002
    Messages
    678
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 678
    Par défaut
    votre projet est-il C ou C++ ?

    car si libregex.a a été compilé avec gcc et que votre projet compile avec
    g++, l'edition de liens risque de ne pas se faire

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 15
    Par défaut
    Mon projet est bien en C++.

    Je ne peux pas utiliser une librairie statique C avec une application C++ ? Ou alors serait-ce parce que ce n'est pas le meme compilateur : GCC et G++ ?

    Comment puis-je faire alors ?

  4. #4
    HRS
    HRS est déconnecté
    Membre chevronné
    Avatar de HRS
    Inscrit en
    Mars 2002
    Messages
    678
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 678
    Par défaut
    si, une appli C++ peut utiliser une library statique C à condition que le .h
    contenant les protos soit sous la forme suivante

    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
     
    #if !defined (MON_HEADER_H)
    #define MON_HEADER_H
     
    #ifdef __cplusplus
    extern "C" {
    #endif
     
    /*
     
    corps de mon_header.h
     
     
    */
     
    #ifdef __cplusplus
    }
    #endif
     
    #endif

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 15
    Par défaut
    Le linker ne me sort plus d'erreur mais par contre j'ai l'impression que j'ai du mal compiler la lib, regcomp me sort a chaque fois une erreur.

    J'ai compile la lib simplement en creant un projet sous Dev-cpp et sans utiliser le makefile.in donne avec la lib. J'ai eu des warnings comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    passing arg 1 of `bcopy' from incompatible pointer type
    Comment puis-je utiliser le makefile.in et le configure.in de la lib sous Dev-cpp ?

    Pour l'instant, j'ai installe Cygwin pour essayer de le compiler, mais je suis un peu perdu.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 15
    Par défaut
    Bon au final, j'ai recuperer une version deja compile de la librairie et j ai modifie le .h afin de l'utiliser en c++.

    On dirait que ca marche.
    Merci de m'avoir fait pense a la balise __cplusplus.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 20/06/2007, 12h34
  2. [Qt4] Linker error (vtable)
    Par titus55 dans le forum Qt
    Réponses: 7
    Dernier message: 23/05/2007, 10h04
  3. Réponses: 17
    Dernier message: 25/10/2005, 10h09
  4. Linker error :^/
    Par Ekinoks dans le forum OpenGL
    Réponses: 15
    Dernier message: 05/09/2004, 14h18
  5. [Kylix] probleme (LINKER ERROR)
    Par subzero82 dans le forum EDI
    Réponses: 2
    Dernier message: 14/05/2004, 19h28

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