crossmax
04/06/2014, 15:19
Hola,
Como algunos me leísteis hace unos dias, estaba creando una librería y para ello necesitaba añadir otro librería externa que me fallaba. Ya lo solucioné
El caso es que he creado una librería.a y veo que para que funcione en cualquier aplicacion que programe necesito indicar donde estan las cabeceras de los objetos que añadí al crearla con:
ar -rv libMiLib-a modulo1.o modulo2.o modulo3.o
por lo que estarán disponibles todas las funciones que en las cabeceras aparezcan.
La pregunta es: ¿Como puedo hacer que al incluir mi libreria en cualquier aplicacion solo estén disponibles las funciones que yo quiera? He probado a quitarlas de las cabeceras (de los .h) pero siguen estando disponibles
Y una ultima pregunta: ¿es posible crear mi libreria incluyendo la otra libreria de terceros para que no se necesite incluir (esta ultima) al compilar la aplicacion que haga uso de mi libreria? Es decir, que solo si incluya -lMiLib.
Muchas gracias!
Como algunos me leísteis hace unos dias, estaba creando una librería y para ello necesitaba añadir otro librería externa que me fallaba. Ya lo solucioné
El caso es que he creado una librería.a y veo que para que funcione en cualquier aplicacion que programe necesito indicar donde estan las cabeceras de los objetos que añadí al crearla con:
ar -rv libMiLib-a modulo1.o modulo2.o modulo3.o
por lo que estarán disponibles todas las funciones que en las cabeceras aparezcan.
La pregunta es: ¿Como puedo hacer que al incluir mi libreria en cualquier aplicacion solo estén disponibles las funciones que yo quiera? He probado a quitarlas de las cabeceras (de los .h) pero siguen estando disponibles
Y una ultima pregunta: ¿es posible crear mi libreria incluyendo la otra libreria de terceros para que no se necesite incluir (esta ultima) al compilar la aplicacion que haga uso de mi libreria? Es decir, que solo si incluya -lMiLib.
Muchas gracias!