Problema con libreria

Limniky
19 de Noviembre del 2003
Hola a todos:

Estoy intentado crear una liberia estática para usarla con mis programas, pero no consigo que la cosa funcione correctamente.
El problema es que si dentro de mi propia libreria declaro otras librerias, como por ejemplo CONIO, y luego en el programa donde voy a utilizar mi libreria, también declaro la libreria CONIO, pero al compilar ,el programa me da un monton de errores de duplicidad de declaración.
¿que es lo que estoy haciendo mal?.
Os adjunto un ejemplo de los codigos:

CODIGOS PARA LA CREACION DE LA LIBRERIA

1)
//milibreria.h
#ifndef MILIBRERIA
#define MILIBRERIA

void saludo();

#endif

2)
//milibreria.cpp
#include "milibreria.h"
#if !defined(__CONIO_C)
#include<conio.c>
#endif
void saludo()
{
gotoxy(30,7);
cprintf("HOLA");
return;
}

Con estos codigos y mediante un proyecto genero la libreria estatica "milibreria.a"

3)
//miprograma.cpp
#include <stdlib.h>
#include <conio.c>

#include "milibreria.h"

using namespace std;

int main()
{
saludo();
gotoxy(15,15);
cprintf("HOLA DE NUEVO");
system("PAUSE");
return 0;
}

Con este programa creo un proyecto, y en el Linker le digo que ha de utilizar la libreria "milibreria.a"
Si no incluyo la libreria CONIO, el proyecto compilar perfectamente, pero si incluyo dicha libreria y utilizo alguna de sus funciones es cuando me da los errores.

Gracias anticipadas.

MariGuanO
19 de Noviembre del 2003
Mira, cuando tu declaras una biblioteca quiere decir que vas a usar todas las funciones que esten ahi. Si tu mismo estas haciendo una libreria y en esa mismo estas usando otras, pues ya no es nesesario que las pongas en el programa prncipal, ya que de todos modos las estas declarando cuando declaras la biblioteca que hiciste...