Witam!
Dopiero zaczynam naukę i pojawił się problem którego nie potrafię rozwiązać. Otóż stworzyłem prosty plik nagłówkowy *.h oraz 2 pliki *.c Wszystkie trzy są poniżej. Problem polega na tym, że podczas próby kompilacji biblioteka.c linker krzyczał o tym:
- In function `main': *
- [Linker error] C:\MinGW\msys\1.0\src\mingwrt/../mingw/main.c undefined reference to `WinMain@16' *
- ld returned 1 exit status *
Kiedy chcę skompilować main.c to linker informuje, że nie zna zmiennej "suma" tj. jest coś takiego:
- [Linker error] C:\Users\Krzysiek\AppData\Local\Temp\cc0GQsLI.o:main.c:(.text+0x1e): undefined reference to `suma' *
- ld returned 1 exit status *
kody:
//plik: main.c
#include <stdio.h>
#include "biblioteka.h"
int main()
{
printf("%d",suma(10,15));
scanf("%d");
}
//Plik: biblioteka.cpp
#include "biblioteka.h"
#include <stdio.h>
int suma(int a,int b)
{
return(a+b);
}
//Plik: biblioteka.h
#ifndef biblioteka_h
#define biblioteka_h
int suma(int a,int b);
#endif
Mam dwa pytania:
1.Które komunikaty są normalne (o ile takie są) i nie trzeba się nimi przejmować?
2.Gdzie popełniłem błąd, że to nie chce zadziałać?