La raison pour laquelle je n'ai pas précisé l'extension du fichier, c'est que pour moi ce n'est pas l'option "-l" qui définit l'extension, mais le fait de lier statiquement ou dynamiquement. Du coup, pour moi le "-lm" signifie juste "lier le fichier libm", le chemin étant précisé par -L (ou $LD_LIBRARY_PATH), et l'extension par la méthode de liage.
Pour le reste, je préfère lier dynamiquement, pour la simple raison que je ne vois pas de justification à dupliquer le code sur tous les fichiers.
Néanmoins, je trouve que lier statiquement a des avantages. Le premier que je vois, c'est bêtement lors de l'utilisation d'une version "exotique" d'une bibliothèque, qui présente des incompatibilités avec ce qui est normalement installé/présent. Lier statiquement, dans ce cas, évite de se prendre le chou à configurer le serveur où sera installé l'usine à gaz (parce qu'on est d'accord, si ça arrive, c'est qu'on est en présence d'Une Mauvaise Chose©)