Heim > Backend-Entwicklung > C++ > Warum erzeugt mein C-Code unter macOS Fehler „Undefinierte Symbole' und wie kann ich diese beheben?

Warum erzeugt mein C-Code unter macOS Fehler „Undefinierte Symbole' und wie kann ich diese beheben?

Barbara Streisand
Freigeben: 2024-12-07 12:37:11
Original
310 Leute haben es durchsucht

Why Does My C   Code Produce

Fehler beim Kompilieren von C-Code: Undefinierte Symbole

Beim Kompilieren von C-Code unter macOS Lion weisen Fehler im Zusammenhang mit undefinierten Symbolen darauf hin, dass der Compiler fehlerhaft ist Verknüpfen des Codes mit der C-Standardbibliothek (-lcrt1.10.6.o) anstelle der C-Standardbibliothek (-lstdc .6.dylib).

Ursache:

Dieser Fehler tritt normalerweise auf, wenn das C-Frontend (gcc) zum Kompilieren von C-Code verwendet wird, was zu einer falschen Verknüpfung mit führt die entsprechenden Bibliotheken.

Lösung:

Um diesen Fehler zu beheben, verwenden Sie den C-Compiler (g oder clang ), um den Code zu kompilieren. Diese Compiler verarbeiten die C-Syntax und verknüpfen automatisch die C-Standardbibliothek, wodurch undefinierte Symbolfehler vermieden werden.

Beispiel mit g:

$ g++ main.cpp -o main
Nach dem Login kopieren

Beispiel mit clang :

$ clang++ main.cpp -o main
Nach dem Login kopieren

Nach dem Kompilieren mit dem richtigen Compiler sollte das nicht mehr auftreten undefinierte Symbolfehler. Die Ausgabe des Flags -v, das den Linker-Aufruf anzeigt, kann verwendet werden, um zu überprüfen, ob die richtigen Standardbibliotheken verknüpft werden.

Das obige ist der detaillierte Inhalt vonWarum erzeugt mein C-Code unter macOS Fehler „Undefinierte Symbole' und wie kann ich diese beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage