ayuda creación de librería estática en c++

Iniciado por winroot, 30 Mayo 2010, 17:12 PM

0 Miembros y 1 Visitante están viendo este tema.

winroot

hola!
estoy creando una simple librería estática usando dev c++.
solo consta de una función llamada mensage, que lo único que hace es mostrar hola mundo. :D
compila perfecto el fichero .o, pero el problema que cuando hago en un programa:
Código (cpp) [Seleccionar]

#include<iostream>
#include<lb/libro.h>
using namespace std;
int main()
{
mensage();
cin.get();
return 0;
}

tira error en la  línea del include a lb/libro.h
aclaro que lb es una carpeta que está dentro del directorio include.
creo que el  problema es el fichero .h mismo, y no  el include.
libro.h
Código (cpp) [Seleccionar]

#ifndef libro_h
  #define libro_h
int mensage();
#endif

está bien este archivo h?
gracias por leer
saludos y gracias!
Mi blog sobre programación y seguridad informática:
http://win-root.blogspot.com

.:BlackCoder:.

Ponlo entre "" a ver... En vez de <>... Y tal vez tengas que poner toda la direccion...

Saludos...
"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja




Littlehorse

Cual es el error que te muestra? y en donde esta la definición de "mensage"?
An expert is a man who has made all the mistakes which can be made, in a very narrow field.

winroot

Cita de: Littlehorse en 30 Mayo 2010, 19:03 PM
Cual es el error que te muestra? y en donde esta la definición de "mensage"?
el error exacto no me acuerdo, en un rato me fijo.
sobre lo segundo, se supone que la definición de esa función está en el fichero libro.o.
ahora no  recuerdo bien como estaba, se que lo  hice siguiendo la parte de zator de librerías estáticas.

pero bueno, creo que lo mejor será que cree la librería de nuevo, no es tanto.:D
gracias a los 2, y si  me pasa de nuevo se los comunico.
saludos y gracias!
Mi blog sobre programación y seguridad informática:
http://win-root.blogspot.com

.:BlackCoder:.

La definicion no deberia ser en un .cpp, en el que incluyes el .h? Digo yo  :xD

Saludos...
"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja




winroot

#5
Cita de: El_nuevo_HH en 30 Mayo 2010, 20:41 PM
La definicion no deberia ser en un .cpp, en el que incluyes el .h? Digo yo  :xD

Saludos...
que yo sepa, cuando se compila el .cpp que tiene la definición se pasa a .o en el caso de min gw.

queda
libro.h
libro.o
pero bueno, por si acaso en un rato cuando la haga de nuevo pruevo.
gracias y saludos!
edito:
será el  próximo  miércoles, me acaba de llegar un correo con tarea para la escuela :huh:
saludos
Mi blog sobre programación y seguridad informática:
http://win-root.blogspot.com

M3LiNdR1

Cita de: winroot en 30 Mayo 2010, 20:50 PM
Cita de: El_nuevo_HH en 30 Mayo 2010, 20:41 PM
La definicion no deberia ser en un .cpp, en el que incluyes el .h? Digo yo  :xD

Saludos...
que yo sepa, cuando se compila el .cpp que tiene la definición se pasa a .o en el caso de min gw.

queda
libro.h
libro.o
pero bueno, por si acaso en un rato cuando la haga de nuevo pruevo.
gracias y saludos!
edito:
será el  próximo  miércoles, me acaba de llegar un correo con tarea para la escuela :huh:
saludos

En el archivo donde uses los metodos enlazas el archivo.h o en su caso si es c++ .hpp. Compilar solo se compilan los .cpp que luego al obtener el .o (fichero objeto) los enlazas con los otros ficheros objeto de las otras clases.

Acerca de tu pregunta de porque no te funciona el codigo, yo creo que tiene razon El_nuevo_HH. Tienes que poner el nombre del fichero headers entre comillas dobles.

Va baixar davant dels meus...ulls molt suaument...sense alterar la quietud de la nit,amb un somriure ple de confiança com sino se li escapes res...


C/C++ - Prolog - Java - PHP - Python - SQL - ASP.NET - C# - javascript