小弟今天在虚拟机上试图按照tuxedo8.1,结果忙乎了一个下午,终于在一个午觉后取得成功,把大概遇到的错误和解决方法贴于此。
本人的linux为红帽企业版as4,并且jre已经安装1.6的最新版。主要遇到两个问题,希望遇到同样问题的人可以有用
遇到的第一个问题:
Preparing to install...
The included VM could not be uncompressed. Please try to download
the installer again and make sure that you download using 'binary'
mode. Please do not attempt to install this currently downloaded copy.
这个是因为这个版本的os没有uncompress的缘故,解决方法:
cp /bin/gunzip /bin/uncompress
第二个问题:
Preparing to install...
Error occurred during initialization of VM
Unable to load native library: /tmp/install.dir.14985/Linux/resource/jre/jre/lib/i386/libjava.so: symbol __libc_wait,
version GLIBC_2.0 not defined in file libc.so.6 with link time reference
这个问题最烦人,主要是因为主要文件libcwait.c很难找到了,本来可以在这里下载:ftp://people.redhat.com/drepper/libcwait.c
但是现在却很难下到,至少我的机器是这样,所以我最后会把文件内容贴出来。
有了这个文件后,gcc -shared -fpic -o libcwait.so libcwait.c
再export LD_PRELOAD=/home/tuxedo/libcwait.so
之后我再安装就一切顺利了,图形化界面也出来了,luck。
希望以后不要再出岔子了,呵呵。
libcwait.c文件内容:
复制内容到剪贴板
代码:
/* Compile with
gcc -shared -o libcwait.so libcwait.c -fpic -o2
and use it by adding
LD_PRELOAD=/home/ora9i/Disk1/libcwait.so
in the environment of the application with the bug.
*/
#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;
}