Hallo,
ich bin gerade dabei ein wenig mit C++ (clang 6.0.0) unter FreeBSD 11.2 zu experimentieren. Dabei ist mir aufgefallen, dass wenn ich Standard-Thread-Klasse std::thread benutze, beim Linken Fehler angezeigt werden: Eine pthread_create Funktion wäre undefiniert. Wenn ich nun libpthread dazulinke, funktioniert das Ganze. Bedeutet das, dass in der Standard-Lib intern libpthread benutzt wird, um std::thread zu implementieren? Aber die Implementation ist nicht komplett "versteckt", es muss noch libpthread dazugelinkt werden?
Irgendwie überrascht mich das ein bisschen. Oder mache ich etwas grundsätzlich falsch?
Viele Grüße,
Karl
ich bin gerade dabei ein wenig mit C++ (clang 6.0.0) unter FreeBSD 11.2 zu experimentieren. Dabei ist mir aufgefallen, dass wenn ich Standard-Thread-Klasse std::thread benutze, beim Linken Fehler angezeigt werden: Eine pthread_create Funktion wäre undefiniert. Wenn ich nun libpthread dazulinke, funktioniert das Ganze. Bedeutet das, dass in der Standard-Lib intern libpthread benutzt wird, um std::thread zu implementieren? Aber die Implementation ist nicht komplett "versteckt", es muss noch libpthread dazugelinkt werden?
Irgendwie überrascht mich das ein bisschen. Oder mache ich etwas grundsätzlich falsch?
Viele Grüße,
Karl