Cabeçalhos declare funções, são bibliotecas que definem elas.
Normalmente, você precisaria adicionar bibliotecas para serem vinculadas explicitamente na linha de comando gcc
, por exemplo, gcc -o prog prog.c -lm
para a biblioteca de matemática libm
. No entanto, a biblioteca pthread
é um caso especial - ela é vinculada por um sinalizador de compilador especial -pthread
:
gcc -pthread example.c
De man gcc
-pthread
Adds support for multithreading with the pthreads library. This
option sets flags for both the preprocessor and linker.