On Wed, 2004-05-26 at 01:47 +0300, Hetz Ben Hamo wrote:
qemu: relocation error: qemu: symbol __libc_sigaction, version GLIBC_PRIVATE
not defined in file libc.so.6 with link time reference
Googling this error brings a link to a redhat 7.3 bug ;)
__libc_sigaction is a glibc private function. Explicitly linking to it
is an application bug.
I believe it's done to work around an old linuxthreads-related SDL bug
which doesn't actually exist any more.
--- qemu-0.5.4/vl.c.orig 2004-05-02 11:58:59.852195291 +0100
+++ qemu-0.5.4/vl.c 2004-05-02 11:59:37.856959391 +0100
@@ -56,18 +56,6 @@
#define memalign(align, size) malloc(size)
#endif
-#ifdef CONFIG_SDL
-/* SDL use the pthreads and they modify sigaction. We don't
- want that. */
-#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2)
-extern void __libc_sigaction();
-#define sigaction(sig, act, oact) __libc_sigaction(sig, act, oact)
-#else
-extern void __sigaction();
-#define sigaction(sig, act, oact) __sigaction(sig, act, oact)
-#endif
-#endif /* CONFIG_SDL */
-
#include "disas.h"
#include "exec-all.h"