Entonces aclaremos un par de cosas. Una libreria compilada no incluye el .c o .cpp, es un archivo .h y un .o ó .a.
Para crear algo como lo que quieres solo debes crear un archivo .c con las funciones que quieras incluir en tu librería, el .h con las cabeceras o prototipos de las funciones y todas las variables globales de esa librería.
Debes incluir el .h en el .c, es decir el .c quedaría algo así:
Código:
#include "milibreria.h"
void funcion1(int algo)
{
// definicion ...
}
y el .h:
Código:
#ifndef _MILIBRERIA_H_
#define _MILIBRERIA_H_
void funcion1(int algo);
#endif
Las directivas que agregué son para evitar errores en caso de que incluyas 2 o más veces la misma cabecera.
Para compilar la librería sería:
Cita: $ gcc -c milibreria.c -o milibreria.o
Si el .c y el .h están en el mismo dir no hay problemas, pero si están en dir diferentes entonces debes indicarle al compilador en que directorio está con la opción "-I" (sin las comillas).
Luego compilas tu programa e incluyes la/s libreria/s que creaste.
Lee un poco acerca del gcc y sus opciones.
Saludos