Undefiniertes Symbol „___gxx_personality_v0“ in GCC-Builds
Beim Kompilieren von C-Code mit der Befehlszeile gcc test.cpp kann der Fehler bei Entwicklern auftreten :
Undefined symbols: "___gxx_personality_v0", referenced from: etc...
Dieser Fehler tritt auf, weil gcc zum Kompilieren von C-Code gedacht ist. Um C-Code zu erstellen, verwenden Sie stattdessen den C-Compiler g:
g++ test.cpp
Alternativ, wenn gcc verwendet werden muss, fügen Sie das Flag -lstdc zur Befehlszeile hinzu:
gcc test.cpp -lstdc++
Dieses Flag verknüpft die Standard-C-Bibliothek, die die notwendigen Symbole enthält.
Ausführen von md5 auf die resultierenden ausführbaren Dateien (.a.out) von beiden g und gcc mit -lstdc liefert eine identische Ausgabe, was darauf hinweist, dass sie gleichwertig sind.
Aus Gründen der Einfachheit und Kompatibilität wird daher im Allgemeinen die Verwendung von g zum Kompilieren von C-Code empfohlen.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich beim Kompilieren von C-Code mit GCC den Fehler „Undefiniertes Symbol \'___gxx_personality_v0\'\'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!