Wenn ich ein Programm kompilieren möchte, bekomme ich folgende komische Fehlermeldung:
<pre>
axel@linux:~ > gcc atexit.c
/tmp/cc504xqB.o: In function `main':
/tmp/cc504xqB.o(.text+0x94): undefined reference to `atexit'
/tmp/cc504xqB.o(.text+0xa4): undefined reference to `atexit'
collect2: ld returned 1 exit status
axel@linux:~ >
</pre>
Der Source dazu ist:
<pre>
#include <stdio.h>
#include <stdlib.h>
#define ENTER printf("<ENTER>");getchar()
void funktion1()
{
printf("Die Funktion funktion1 wurde aufgerufen\n");
ENTER;
}
void funktion2()
{
printf("Die Funktion funktion2 wurde aufgerufen\n");
ENTER;
}
int main()
{
printf("Wir beenden unser Programm\n");
ENTER;
atexit(funktion1);
atexit(funktion2);
}
</pre>
Ich benutze den GCC 2.95.2
<pre>
axel@linux:~ > gcc atexit.c
/tmp/cc504xqB.o: In function `main':
/tmp/cc504xqB.o(.text+0x94): undefined reference to `atexit'
/tmp/cc504xqB.o(.text+0xa4): undefined reference to `atexit'
collect2: ld returned 1 exit status
axel@linux:~ >
</pre>
Der Source dazu ist:
<pre>
#include <stdio.h>
#include <stdlib.h>
#define ENTER printf("<ENTER>");getchar()
void funktion1()
{
printf("Die Funktion funktion1 wurde aufgerufen\n");
ENTER;
}
void funktion2()
{
printf("Die Funktion funktion2 wurde aufgerufen\n");
ENTER;
}
int main()
{
printf("Wir beenden unser Programm\n");
ENTER;
atexit(funktion1);
atexit(funktion2);
}
</pre>
Ich benutze den GCC 2.95.2
Comment