Параметр -l обычно используется для указания библиотеки (в данном случае библиотеки pthread), которая должна быть связана с вашей программой.
Поскольку функции потоков часто находятся в отдельной библиотеке, вам нужна такая опция при создании программы, которая их использует, или вы получите ошибки компоновщика.