Maison > Article > développement back-end > Pourquoi `__gxx_personality_v0` manque-t-il dans mon programme C autonome et comment puis-je y remédier ?
Quel est le rôle de __gxx_personality_v0 dans les programmes C autonomes ?
Une erreur d'éditeur de liens persistante lors de la compilation d'un programme C autonome peut être lié à la définition manquante du symbole __gxx_personality_v0 dans libstdc . Bien qu'une simple définition puisse résoudre le problème, il est essentiel de comprendre son objectif.
__gxx_personality_v0 fait partie intégrante des tables de déroulement de la pile, comme en témoignent les résultats de l'assembly. L'ABI Itanium C définit explicitement son rôle en tant que routine de personnalité.
En déclarant __gxx_personality_v0 comme pointeur de vide NULL global, l'erreur est efficacement corrigée. Toutefois, cela se produit car aucune exception n’est levée. En cas d'exception, le comportement deviendrait évident.
Pour éviter de tels problèmes, envisagez de désactiver les exceptions avec -fno-exceptions et RTTI avec -fno-rtti. Alternativement, une liaison avec g au lieu de gcc ajoutera automatiquement -lstdc , résolvant la dépendance.
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!