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

Embarqué Discussion :

méthodologie crosscompilation librairie opencv


Sujet :

Embarqué

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 294
    Points : 128
    Points
    128
    Par défaut méthodologie crosscompilation librairie opencv
    Bonjour,

    j'aimerais savoir comment on cross compile une librairie et toutes ces dépendances.

    Comment trouve-t'on toutes les dépendances d'une librairie (Par exemple pour opencv)?

    Comment on les cross compile? Comment on dit au compilateur (la toolchain) les dépendances qu'il doit utiliser?

    Comment cross compile-t'on la librairie elle-même? Comment on dit au compilateur la librairie qu'il doit utiliser?

    Merci.

  2. #2
    Membre chevronné

    Homme Profil pro
    .
    Inscrit en
    Janvier 2006
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Janvier 2006
    Messages : 703
    Points : 1 950
    Points
    1 950
    Par défaut
    Citation Envoyé par xavierdestev Voir le message
    Comment trouve-t'on toutes les dépendances d'une librairie (Par exemple pour opencv)?
    En regardant le Makefile.

    Citation Envoyé par xavierdestev Voir le message
    Comment on les cross compile? Comment on dit au compilateur (la toolchain) les dépendances qu'il doit utiliser?
    De la même façon que la lib parente. Il suffit juste de déposer les .so et headers générés dans un dossier et de préciser les chemins dans les flags de gcc.

    Dans les options de compilation via les flags, notamment LDFLAGS.

    Citation Envoyé par xavierdestev Voir le message
    Comment cross compile-t'on la librairie elle-même? Comment on dit au compilateur la librairie qu'il doit utiliser?
    Pareil que pour de la compilation sur machine host. Généralement il suffit de changer les binaires utilisés pour compiler la lib, c'est à dire CC, AS, STRIP, etc.
    A partir d'un simple export CC=<ton gcc de ta toolchain> avant l'appel du make tu peux changer le compilateur. Pas mal de Makefiles utilisent une variable à exporter qui redéfinit tout le path avant "gcc". Ce qui te permet d'utiliser gcc normal quand tu ne renseignes pas la variable et gcc pour arm par exemple en précisant tout le chemin pour y aller.

    Pour inclure la lib tu dois préciser le chemin dans les LDFLAGS lors de la compilation de ton logiciel qui souhaite se linker à ta lib crosscompilée.

    Après, honnêtement, google regorge d'explications sur la cross compilation.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 294
    Points : 128
    Points
    128
    Par défaut
    Merci pour la réponse.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/03/2012, 10h23
  2. Problème exécution avec librairie OpenCV
    Par RedDrak dans le forum NetBeans
    Réponses: 1
    Dernier message: 06/06/2011, 14h58
  3. Réponses: 2
    Dernier message: 05/06/2009, 16h16
  4. [LabVIEW 8.2][Débutant] Utiliser la librairie Opencv
    Par SamouraiChamploo dans le forum LabVIEW
    Réponses: 7
    Dernier message: 24/03/2009, 13h05
  5. Erreur de lieur avec la librairie OpenCV
    Par pasqual dans le forum C++Builder
    Réponses: 5
    Dernier message: 23/09/2008, 22h28

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