Maison >développement back-end >C++ >Comment supprimer les symboles inutilisés des exécutables C/C avec GCC et ld ?
L'optimisation de la taille de l'exécutable peut être cruciale dans les systèmes ou ressources embarqués -environnements contraints. Pour y parvenir, il est important de supprimer les symboles inutilisés de l'exécutable.
GCC et ld fournissent des options pour supprimer les symboles inutilisés lors de la compilation et de la liaison :
Pour supprimer les symboles inutilisés, suivez ces étapes :
Supposons que nous ayons un fichier test.cpp avec deux fonctions dont une est inutilisée :
int use(int a); int unused(int a);
Pour supprimer la fonction inutilisée , compilez et liez comme suit :
gcc -Os -fdata-sections -ffunction-sections test.cpp -o test -Wl,--gc-sections
Cette commande demandera à GCC de séparer le code et les données en sections et à ld de les supprimer. sections non référencées, ce qui donne un exécutable de taille réduite.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!