Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: snake_linux en 2 Septiembre 2015, 17:07 PM

Título: Pequeña duda sobre GCC
Publicado por: snake_linux en 2 Septiembre 2015, 17:07 PM
Hola a tod@s, resulta que algunas veces, para que al compilar se reconozcan ciertas librerías necesito hacer un -l(libreria) si no no me la reconoce, por ejemplo, al compilar algo que usa math.h sería:

gcc pruebas.c -o pruebas -lmath

O si uso threads:

gcc pruebas.c -o pruebas -lpthread

¿ Por que tengo que linkearla si ya la defino con include ?.

Saludos.
Título: Re: Pequeña duda sobre GCC
Publicado por: someRandomCode en 2 Septiembre 2015, 17:18 PM
No todas las librerias definen en los .h las funciones, y en ese caso hay que linkearlas..
La mayoria de las funciones intrinsecas estan definidas, pero el resto se definen como externas, y solo se te da el prototipo/firma de la misma para que puedas usarla comodamente, en vez de tener que cargarla desde la libreria dinamica/estatica manualmente y luego de usarla tener que liberarla.
Título: Re: Pequeña duda sobre GCC
Publicado por: kondrag_X1 en 2 Septiembre 2015, 19:07 PM
lo mejor es hacerse un make para cada proyecto y listo.
Título: Re: Pequeña duda sobre GCC
Publicado por: snake_linux en 3 Septiembre 2015, 12:23 PM
Gracias :)