Foros del Web » Programación para mayores de 30 ;) » C/C++ »

crear libreria de funciones propias

Estas en el tema de crear libreria de funciones propias en el foro de C/C++ en Foros del Web. Hola a todos. pido ayuda, quien me puede ayudar?...
  #1 (permalink)  
Antiguo 19/01/2008, 15:00
 
Fecha de Ingreso: marzo-2004
Mensajes: 26
Antigüedad: 20 años
Puntos: 0
crear libreria de funciones propias

Hola a todos.
pido ayuda, quien me puede ayudar?
  #2 (permalink)  
Antiguo 21/01/2008, 07:51
Avatar de _Lucifer_  
Fecha de Ingreso: junio-2006
Mensajes: 1.662
Antigüedad: 17 años, 10 meses
Puntos: 28
Re: crear libreria de funciones propias

Si explicas para qué es la ayuda, sería bueno...por el título y el foro en el que lo estás poniendo supongo que quieres hacer una librería para C o C++, pero ¿La quieres compilada? ¿un .dll .a .o .so .lib? ¿en que SO?

Porque eso se podría solucionar con un archivo de cabecera y su respectivo archivo .c o .cpp, pero con la poca info que das no ayudas mucho.

Saludos
__________________
Si crees que no tiene sentido, etonces probablemente lo tenga... :arriba:
  #3 (permalink)  
Antiguo 21/01/2008, 10:25
 
Fecha de Ingreso: marzo-2004
Mensajes: 26
Antigüedad: 20 años
Puntos: 0
Re: crear libreria de funciones propias

me gusstaria como bien dices una libreria compilada.
Uso Linux: Ubuntu. 7.10.
Y eso, me gustaria como tu dices un archivo de cabecera .h y su correspondiente .c (pongamos milibreria.h y milibreria.c)

- como compilaralos
- como llamarla desde otro programa
- en que ruta ponerlas

Y luego, pongamos un archivo principal.c

- como compilar principal.c con esa libreria

muchas gracias por todo.

Nota.- Algo asi al estilo de #include <string.h>.

Última edición por eldelpuerto; 21/01/2008 a las 10:30
  #4 (permalink)  
Antiguo 21/01/2008, 12:26
Avatar de _Lucifer_  
Fecha de Ingreso: junio-2006
Mensajes: 1.662
Antigüedad: 17 años, 10 meses
Puntos: 28
Re: crear libreria de funciones propias

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
__________________
Si crees que no tiene sentido, etonces probablemente lo tenga... :arriba:
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:05.