atexit w statycznie linkowanych programach
Jakub Bogusz
qboosh w pld.org.pl
Śro, 16 Kwi 2003, 14:04:20 CEST
Dotyczy starego glibc 2.2.5, w 2.3.2 jest chyba dobrze.
Testcase:
#v+
#include <stdio.h>
#include <stdlib.h>
void x(void) {
printf("atexit\n");
}
int main() {
printf("blah\n");
atexit(x);
printf("blah blah\n");
}
#v-
Dynamicznie zlinkowane z glibc (2.2.5 i 2.3.2) działa.
Statycznie - z 2.3.2 działa, z 2.2.5-23 SEGV w momencie wywołania atexit().
W połączeniu z tym, że w nowych wersjach modutils (z HEAD, z --without
linux25) z jakiegoś powodu obie wersje insmoda są linkowane statycznie
(zaraz zobaczę dlaczego i poprawię), dostajemy niemożność automatycznego
ładowania modułów przez jądro :/
--
Jakub Bogusz http://cyber.cs.net.pl/~qboosh/
Więcej informacji o liście dyskusyjnej pld-devel-pl