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 :

éditions des liens incrémentielles


Sujet :

C++

  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    688
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 688
    Par défaut éditions des liens incrémentielles
    Bonjour

    que signifie l'édition des liens incrémentielles ?
    merci

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 461
    Par défaut
    Bonjour,

    Dans quel contexte ?

  3. #3
    Membre très actif
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    688
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 688
    Par défaut
    sous visual au moment de réaliser l'éditions des liens cette dernière phase pour être ou non incrémentielles

  4. #4
    Membre très actif
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    688
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 688
    Par défaut
    De plus je m’interrogeais sur la notion d'unité de compilation en C++, c'est comme en C un .cpp = une unité de compilation= un module

  5. #5
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 636
    Par défaut
    Salut,

    Tu le sais surement, le rôle de l'éditeur de liens est de regrouper l'ensemble des fichiers objets dans un seul exécutable ou une seule dll.

    Le fait est qu'il y a souvent de nombreux fichiers qui ne sont pas modifiés entre deux compilations, et donc entre deux éditions de liens.

    On peut donc estimer que le résultat de l'édition de liens précédente sera "en bonne partie" identique à celui de l'édition de liens actuelle, et que l'on peut donc envisager de prendre comme base ce résultat précédent et de travailler sur les différences qu'il peut y avoir avec le résultat que l'on devrait obtenir maintenant.

    Lorsque tu effectue une édition de liens incrémentielle, elle est effectuée en suivant ce principe.


    L'idée à la base de cette réflexion est qu'il devrait simplement prendre moins de temps de déterminer les différences et de les appliquer que de refaire tout le boulot depuis le début, et ce sera sans doute vrai tant que tu te contentera de modifications minimes dans un nombre de fonctions peu important ou de rajouter de nouveaux fichiers d'implémentation.

    Par contre, si tu modifie en profondeur un grand nombre de fonctions dans un grand nombre de fichiers, il peut arriver que le travail nécessaire pour déterminer les différences et les appliquer prenne au final plus de temps que ce qu'aurait demandé le fait de tout refaire depuis le début.

    Cependant, à partir du moment où l'on en arrive déjà à devoir éditer les liens, on peut se dire que les modifications apportées à l'existant seront, effectivement, relativement minimes vu qu'il s'agira, la plupart du temps, de corriger une erreur de logique (ce qui n'empêche absolument pas de rajouter de nouvelles unités de compilation )

    Les fichiers générés en utilisant l'édition de liens incrémentielle sont tout à fait compatible avec ceux qui ont été générés de manière non incrémentielle. Cependant leur taille est généralement un peu plus importante car ils sont déjà préparés pour l'édition de lien suivante, par exemple en "laissant un peu d'espace" pour agrandir les fonctions au besoin ou en fournissant certaines informations qui seraient nécessaires pour le réadressage des fonctions.

    L'édition de liens incrémentielle est activée de manière automatique sous visual studio, mais tu peux la désactiver à l'aide de l'option INCREMENTIAL:NO
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  6. #6
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 636
    Par défaut
    Citation Envoyé par guillaume07 Voir le message
    De plus je m’interrogeais sur la notion d'unité de compilation en C++, c'est comme en C un .cpp = une unité de compilation= un module
    une unité de compilation = 1 *.cpp + les *.hpp dont il dépend.

    Un module pouvant parfaitement être composé de plusieurs unité de compilation travaillant de concert.
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  7. #7
    Membre très actif
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    688
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 688
    Par défaut
    merci pour ta réponse

Discussions similaires

  1. [édition des liens] ld: Missing library symbol table in
    Par kaloskagatos dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 25/08/2006, 11h27
  2. [dll] pb à l'édition des liens
    Par poukill dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 05/05/2006, 09h56
  3. [VC++] Erreur d'édition des liens LNK1143
    Par Yellowmat dans le forum MFC
    Réponses: 6
    Dernier message: 01/02/2006, 15h00
  4. [Dev-C++] Problème d'édition des liens
    Par shura dans le forum EDI
    Réponses: 5
    Dernier message: 30/08/2005, 09h35
  5. Problème à l'édition des liens avec BCC55 et Xerces
    Par ShootDX dans le forum Autres éditeurs
    Réponses: 4
    Dernier message: 30/11/2003, 14h50

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