Heim  >  Artikel  >  Backend-Entwicklung  >  Wann ist das Flag „-stdlib=libstdc“ beim Kompilieren mit GCC erforderlich?

Wann ist das Flag „-stdlib=libstdc“ beim Kompilieren mit GCC erforderlich?

Linda Hamilton
Linda HamiltonOriginal
2024-10-24 01:27:29149Durchsuche

When is the

Wann sollte das Flag „-stdlib=libstdc“ beim Kompilieren mit GCC verwendet werden?

In einigen Szenarien kann das explizite Festlegen von „-stdlib= Das Flag „libstdc“ ist beim Kompilieren mit GCC erforderlich. Hier sind die Umstände:

Unter Linux:

Standardmäßig verwenden Linux-Distributionen libstdc als Standard-C-Bibliothek. Darüber hinaus unterstützen moderne Versionen von GCC von Natur aus C 11 in ihrer gebündelten libstdc . Um C 11-Code unter Linux zu kompilieren, sollte daher die einfache Verwendung des Flags „-std=c 11“ mit g ausreichen:

g++ -std=c++11 input.cxx -o a.out

Auf Pre-Mavericks OS X:

Historisch gesehen war g unter OS X ein Alias ​​für clang . In diesem Zusammenhang war Apples ältere Version von libstdc die Standardeinstellung. Um libc zu nutzen, das C 11-Unterstützung beinhaltete, mussten Sie explizit „-stdlib=libc“ angeben:

g++ -std=c++11 -stdlib=libc++ input.cxx -o a.out

Auf Mavericks und höher OS X:

Beginnend mit OS X Mavericks wurde libc zur Standard-C-Bibliothek. Dementsprechend besteht keine Notwendigkeit, das Flag „-stdlib=" zu verwenden:

clang++ -std=c++11 input.cxx -o a.out

Building gegen libstdc unter OS Anwendungen gegen libstdc werden nicht mehr unterstützt. Vorhandener Code, der mit libstdc kompiliert wurde, funktioniert weiterhin, eine neue Codekompilierung ist jedoch nicht zulässig.

Das obige ist der detaillierte Inhalt vonWann ist das Flag „-stdlib=libstdc“ beim Kompilieren mit GCC erforderlich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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