J'ai environ 50 différentes bibliothèques statiques étant lié dans mon projet de c++ et de la liaison prend en moyenne de 70 ans.
J'ai trouvé que déplacer avec l'ordre de liaison de la bibliothèque de changements cette fois. C'est prévu je suppose que si l'éditeur de liens n'avez pas à garder à la recherche pour un ensemble de symboles tout au long de l'ensemble de la table des symboles, il a construit jusqu'à ce point.
Je suppose que je pourrais utiliser "nm" pour obtenir un graphe de dépendance entre les bibliothèques statiques. Toutefois, cela ne ferait que me donner un "corriger" l'ordre des liens. Quels seraient les facteurs impliqués dans l'obtention des le lien le plus rapide de l'ordre?
J'ai le sentiment qu'il aurait quelque chose à voir avec le mentionné ci-dessus graphe de dépendance par l'obtention d'une traversée qui serait tenter de minimiser une certaine quantité, mais je ne suis vraiment pas sûr.
Toute aide serait appréciée.
Je suis principalement à l'aide du compilateur intel et aussi le compilateur gcc chaque maintenant et puis. Deux d'entre eux semblent être à l'aide de l'éditeur de liens GNU ld lorsque je vérifie avec le haut. Espérons que cela aide...
Donc, juste pour clarifier un peu plus sur ce que je suis en train de demander, je sais déjà comment obtenir un 1-passer la commande à partir d'un ensemble de bibliothèques statiques. J'avais écrit ce script moi-même, mais aussi de l'Olaf réponse ci-dessous indique, il y a bien connu les outils pour ce faire.
Ma question est, j'ai déjà deux 1 passe-lien de rangements dont l'un tourne à ~85 ans et l'autre s'exécute dans ~70. Donc, clairement, il y a encore un peu plus d'optimisation que l'on peut faire dans un délai de 1-passer les commandes.