Partage
  • Partager sur Facebook
  • Partager sur Twitter

Utiliser gmp avec Qt

linker les libs à la compilation

Sujet résolu
    12 juin 2008 à 21:16:00

    Bonsoir,

    je développe actuellement un utilitaire en Gui avec Qt qui nécessite d'effectuer des opérations sur de très grands nombres. J'ai immédiatement pensé à la bibliothèque gmp que j'avais déjà utilisé en console.
    Cependant, lors de la compilation, il était nécessaire de linker la bibliothèque gmp (lgmpxx et lgmp), ce que je n'arrive pas à faire dans le cadre d'une compilation Qt.

    Pour info : ma compilation qt :
    qmake-qt4.4 -project
    qmake-qt4.4
    make

    En sachant que j'ai installé moi même Qt v4.4, donc les noms des commandes sont personelles.

    Question : comment permettre à gmp de fonctionner en compilant avec Qt ?

    Dernière info : dans la classe utilisant gmp, j'inclus : #include <gmpxx.h>

    Merci d'avance pour vos réponses,
    sp.conductos
    • Partager sur Facebook
    • Partager sur Twitter
      13 juin 2008 à 1:17:12

      essaie de rajouter à ton .pro:
      LIBS += -L"le/repertoire/de/ta/lib" -ltalibrairie
      • Partager sur Facebook
      • Partager sur Twitter
        13 juin 2008 à 9:07:39

        Bonjour,

        merci pour cette première piste ! J'ai tenté, ça avait l'air de marcher, ma ça ne fonctionne pas tout à fait.
        Après qmake-qt4.4 -project, j'édite le fichier .pro de la façon suivante :
        ######################################################################
        # Automatically generated by qmake (2.01a) ven. juin 13 08:55:52 2008
        ######################################################################
        
        TEMPLATE = app
        TARGET = 
        DEPENDPATH += .
        INCLUDEPATH += .
        
        # Input
        HEADERS += FenPreferences.h FenPrincipale.h WNewKeys.h
        SOURCES += FenPreferences.cpp FenPrincipale.cpp main.cpp WNewKeys.cpp
        # lignes ajoutées
        LIBS += -L/usr/local/lib -lgmpxx -lgmp


        Je lance ensuite qmake-qt4.4 et make, commandent qui fonctionnent sans erreurs.

        Enfin vient le moment de lancer le programme, et là, c'est le drame. L'erreur suivante est renvoyée :
        ./prog: error while loading shared libraries: libgmp.so.3: cannot open shared object file: No such file or directory


        Questions :Où est l'erreur ? Est-ce que ça peut provenir d'un problème de droits d'accès ? Manque-t-il un composant, si oui, lequel ?

        Merci d'avance pour vos réponses,
        sp.conductos

        [EDIT] : Le problème est résolu
        Pour ceux que ça intéresse, voici la procédure pour utiliser gmp avec Qt :
        • ajouter LIBS += -L/usr/local/lib -lgmpxx -lgmp au fichier .pro
        • compiler normalement (qmake puis make)

        Cependant, lors de l'installation de la bibliothèqe, ne pas oublier de créer les liens symboliques suivants (en se plaçant dans /usr/lib) :
        sudo ln -s /usr/local/lib/libgmpxx.so.4 libgmpxx.so.4
        sudo ln -s /usr/local/lib/libgmp.so.3 libgmp.so.3

        Et en principe tout devrait marcher.

        Encore merci pour votre aide !
        • Partager sur Facebook
        • Partager sur Twitter

        Utiliser gmp avec Qt

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown