[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: atexit



> Есть программка test:
> #include <stdlib.h>
> #include <stdio.h>
> void tt(){
> 	printf("Program terminated\n");
> }
> void main(){
> 	g_atexit(tt);
> }
>
> Когда говорю make test вот что выдает:
> cc     test.c   -o test
> test.c: In function `main':
> test.c:8: warning: return type of `main' is not `int'
> /tmp/ccTOpxSH.o: In function `main':
> /tmp/ccTOpxSH.o(.text+0x27): undefined reference to `atexit'
> collect2: ld returned 1 exit status
> make: *** [test] Error 1
>
> Вопрос: почему это?
> Какую библиотеку нужно линковать чтобы получить эту функцию?
> Как узнать в какой библиотеке какие функции определены?

Линковать надо с libglib (-lglib). И, строго говоря, еще
#include <glib.h>
Посмотреть на определенные символы в объектном файле можно с помощью nm
(если табличка символов не стрипнута) или objdump.

А почему не использовать стандартную atexit()?

73!
Crimson Cat aka Stas Torgashov (crimson_cat@mail.ru)
Registered Linux user #163131       ICQ UIN 36938816



Reply to: