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

Systèmes de compilation Discussion :

Lier des librairies dynamiques et statiques, utilisation de CMake


Sujet :

Systèmes de compilation

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    avril 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : avril 2014
    Messages : 18
    Points : 13
    Points
    13
    Par défaut Lier des librairies dynamiques et statiques, utilisation de CMake
    Bonjour,

    Je travaille sous ubuntu et je souhaite créer un exécutable qui inclue les librairies dont j'ai besoin. J'utilise deux librairies : OpenCV qui est dynamique (.so) et une autre librairie statique (.a) CryptoPP.

    Voici mon CMake :
    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
     
    cmake_minimum_required(VERSION 2.8)
    project( Projet )
    set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/contrib/cmake")
    SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
    SET(BUILD_SHARED_LIBRARIES ON)
    SET(CMAKE_EXE_LINKER_FLAGS "-static")
    if(WIN32)
      set(OpenCV_DIR "d:/libs/opencv-2.4.10/build")
    else()
      set(OpenCV_DIR "/usr/lib/opencv")
    endif()
    find_package(OpenCV REQUIRED core imgproc highgui)
    find_package( Cryptopp REQUIRED )
    include_directories(${OpenCV_INCLUDE_DIRS})
    add_executable( Projet projet.cpp )
    target_link_libraries( Projet  ${CRYPTOPP_LIBRARIES} ${OpenCV_LIBS})
    Cependant j'ai une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /usr/bin/ld: attempted static link of dynamic object `/usr/local/lib/libopencv_core.so.2.4.10'
    J'ai essayé de séparer mes librairies en deux groupes (statique et dynamique) dans le CMake mais je n'ai pas réussis Si sous avez la moindre idée du problème merci d'avance.

    Cordialement,

    Laura

  2. #2
    Nouveau Candidat au Club
    Homme Profil pro
    Etudiant
    Inscrit en
    juillet 2020
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : juillet 2020
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Lier des librairies dynamiques et statiques, utilisation de CMake
    Bonjour,

    J'ai le même soucis.

Discussions similaires

  1. quid des librairies dynamiques
    Par Garulfo dans le forum Caml
    Réponses: 12
    Dernier message: 17/06/2008, 14h11
  2. [GCC] Librairie dynamiques et statiques
    Par CKaiser dans le forum C++
    Réponses: 3
    Dernier message: 05/04/2008, 06h32
  3. librairies dynamiques ou statiques ?
    Par _Michel dans le forum Visual C++
    Réponses: 2
    Dernier message: 05/03/2008, 15h17
  4. [Avancé][Optimisation] Charger des librairies dynamiquement
    Par Wookai dans le forum Général Java
    Réponses: 12
    Dernier message: 12/08/2005, 17h34

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