Korrekte Linkoptionen für std::thread in GCC
In GCC unter Linux verwendet std::thread pthread für seine Implementierung. Um std::thread erfolgreich zu verwenden, ist es wichtig, die entsprechenden Linkoptionen während der Kompilierung anzugeben.
Kompilierungsproblem und Lösung
Im bereitgestellten Beispielcode tritt ein Fehler auf, weil der Die erforderliche pthread-Bibliothek ist nicht verknüpft. Um dieses Problem zu beheben, fügen Sie während der Kompilierung das Linker-Flag -pthread nach der Quelldatei hinzu:
$ g++ -std=c++0x test.cpp -pthread
Reihenfolge der Optionen
Beachten Sie Folgendes Linker-Optionen sollten während der Kompilierung nach den Quelldateien platziert werden. Dies liegt daran, dass der Compiler zuerst den Quellcode verarbeitet und dann der Linker die Binärdatei finalisiert, indem er alle erforderlichen Abhängigkeiten auflöst.
Beispiel
Der korrigierte Kompilierungsbefehl wäre:
$ g++ -std=c++0x test.cpp -pthread
Indem Sie dieser Anleitung folgen, können Sie Ihre std::thread-Nutzung in GCC unter Linux korrekt verknüpfen und so Ihre Multithread-Code zur bestimmungsgemäßen Ausführung.
Das obige ist der detaillierte Inhalt vonWie verknüpfe ich std::thread in GCC korrekt mit pthread?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!