Je viens de découvrir que l' -lm
drapeau est nécessaire par la gcc pour compiler un programme qui désigne une fonction de la bibliothèque de mathématiques. Je me demandais pourquoi un lien explicite entre le drapeau n'est pas nécessaire lors de la compilation de programmes contenant d'autres bibliothèques comme la bibliothèque. Si j'écris un programme où l' time()
fonction est appelée, il compile sans problèmes, même avec pas de lien options. Mais un programme avec la bibliothèque de mathématiques impliquées ne va pas fonctionner sans l' -lm
drapeau.
Quelqu'un peut-il expliquer la raison derrière ce comportement? Merci pour votre temps.