91 votes

Quelle est la différence entre "gcc -s" et une commande "strip" ?

Je me demande quelle est la différence entre ces deux :

  • gcc -s : Supprime toutes les informations de table de symboles et de relocalisation de l'exécutable.

  • strip : Supprimer les symboles des fichiers objet.

Ont-ils le même sens ?

Laquelle utilisez-vous pour :

  • réduire la taille de l'exécutable ?
  • accélérer sa course ?

22voto

Khaled Points 415

"gcc -s" supprime les informations de relocalisation ainsi que le tableau de symboles qui n'est pas fait par "strip". Notez que la suppression des informations de relocalisation aurait un certain effet sur la randomisation de la disposition de l'espace d'adresse. Voir ce lien.

7voto

Jim Lewis Points 18753

Ils font des choses similaires, mais strip permet un contrôle plus fin sur ce qui est retiré du fichier.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X