Tengo algunos problemas para compilar algunos archivos usando encabezados. Esta es una composición de mi código:"Referencia no definida a la función" error
Archivo1.c
#include "header.h"
int main() {
func1();
return 0;
}
Archivo2.c
#include "header.h"
void func1() {
... function implementation ...
}
header.h
void func1();
El error que estoy consiguiendo es:
En función
'main'
:
referencia indefinida a'func1'
Nota: Estoy usando un simple resumen de cómo mis 3 archivos se instalan. Necesito que esto funcione con los 3 archivos. Estoy configurando/incluyendo todo correctamente? Necesito usar esta configuración, pero no estoy seguro de cómo file.c obtiene referencia de la implementación real de func1()
.
¿qué compilador estás usando? ¿Puedes proporcionar tu declaración de compilación? – mathematician1975
Si está utilizando 'gcc -o programa archivo2.c archivo1.c', cambie esto a' gcc -o programa archivo1.c archivo2.c'. El orden es importante. –
Hmm, tienes derecho a que esto funcione en la compilación normal de gcc. El problema es que este problema para más es de un proyecto muy grande, con cientos de archivos. Pero la estructura del problema es la misma. Pensé que tal vez no estaba incluyendo las cosas correctamente, pero supongo que ese no es el caso. – Tesla