Вот к этому.
Патч нумер 3006854 от Оракла, который, естественно, дают только зарегистрированным пользователям металинка, делает следующее:
Отсутствующий в glibc2.3 символ __libc_wait воссоздается следующим образом:
вот эта программочка
компилируется в библиотеку /etc/libcwait.so (да-да, именно в /etc. Ненатурализм использования /etc для хранения библиотек я обсуждать не буду) и ссылка на получившуюся библиотеку кладется в /etc/ld.so.preload
Огромное спасибо
lhovitch за моральную и техническую поддержку :)
Патч нумер 3006854 от Оракла, который, естественно, дают только зарегистрированным пользователям металинка, делает следующее:
Отсутствующий в glibc2.3 символ __libc_wait воссоздается следующим образом:
вот эта программочка
#include <errno.h>
#include <sys/syscall.h>
#include <sys/types.h>
#include <sys/wait.h>
pid_t
__libc_wait (int *status)
{
int res;
asm volatile ("pushl %%ebx\n\t"
"movl %2, %%ebx\n\t"
"movl %1, %%eax\n\t"
"int \$0x80\n\t"
"popl %%ebx"
: "=a" (res)
: "i" (__NR_wait4), "0" (WAIT_ANY), "c" (status), "d" (0), "S" (0));
return res;
}компилируется в библиотеку /etc/libcwait.so (да-да, именно в /etc. Ненатурализм использования /etc для хранения библиотек я обсуждать не буду) и ссылка на получившуюся библиотеку кладется в /etc/ld.so.preload
Огромное спасибо