I was trying to install Oracle 9i Release 2 database on my Linux (Fedora Core 1) computer at home. Consistently I was getting an error which referred to Java VM. The exact message was:
"/u01/tmp/oraInstall/jre/1.4.2/bin../lib/i686/green_threads/libzip.so: symbol errno, version GLIBC_2.0 not defined in file libc.so.6 with link time reference (libzip.so)
Unable to initialize threads: cannot fint class java/lang/Thread
Could not create Java VM"
I tried everything I knew and more to get around the error. But the error persisted. I tried installing the latest JRE, J2SDK and changing pointers to java directory. But the error still persisted. I started searching on the internet for the error and got a host of solutions to try. Werner Puschitz's website is a real treasure house on most of the issues that you might face on oracle installation. The error was that Oracle Universal installer was not compatible with the current kernel version 2.4.22. As mentioned by Werner, I set the LD_ASSUME_KERNEL parameter in the profile file (/home/oracle/.bash_profile) to an older one to 2.4.1. It can done on the command line also by running the following command:
oracle$ export LD_ASSUME_KERNEL=2.4.1
It works like a charm after that.
I thought all my installation worries were over by that time. But I checked Oracle' s website I saw a newer release of the database. I downloaded that and tried to install it. There I faced two problems. The files were in .gz (gzip) format. I copied them on CDs and tried to unzip them. But got a message that the files are not in gzip format. I again searched on the internet and found out that browsers; more specifically netscape and mozilla based browsers unzip the files while downloading without any message and leave the .gz extension intact. So I renamed the files and was then able to successfully extract the cpio files to my harddisk.
After that I again tried installing the software and was greeted by another java related error which read like:
"Error occurred during initialization of VM
Unable to load native library: /tmp/OraInstall2004-04-13_03-31-55PM/jre/lib/i386/libjava.so:
symbol ___libc_wait, version GLIBC_2.0 not defined in file libc.so.6 with link time reference"
Although the error looks the same it is totally different error. To resolve the __libc_wait symbol issue, download the patch p3006854_9204_LINUX.zip from http://metalink.oracle.com. See bug 3006854 for more information.
To apply the patch, run
su - root
# unzip p3006854_9204_LINUX.zip
Archive: p3006854_9204_LINUX.zip
creating: 3006854/
inflating: 3006854/rhel3_pre_install.sh
inflating: 3006854/README.txt
# cd 3006854
# sh rhel3_pre_install.sh
Applying patch...
Patch successfully applied
#
NOTE: If you get the following error when you run rhel3_pre_install.sh:
rhel3_pre_install.sh: line 36: gcc: command not found
Then you forgot to install or link gcc, see above. This means you can't start any binaries any more:
# ls
ls: error while loading shared libraries: /etc/libcwait.so: cannot open shared object file: No such file or directory
# rm /etc/ld.so.preload
rm: error while loading shared libraries: /etc/libcwait.so: cannot open shared object file: No such file or directory
#
To fix that, run the echo command which is a built-in shell command:
# echo "" > /etc/ld.so.preload
rm /etc/ld.so.preload
And start over again.
Now runInstaller can be started from the CD:
su - oracle
$ echo $LD_ASSUME_KERNEL # it is important that this variable is set!
2.4.1
Again Werner's website came to my rescue.
OK I knew I had to install the patch but when I tried the obvious place (oracle metalink) I had to get an oracle id for that. I searched the internet with p3006854_9204_LINUX.zip as the search string and came up with this website http://www.mainframeforum.com/t624262.html. It contains that patch and all the other required patches and links to them. On installing the patch, the oracle installation went off smooth.
I hope this helps someone who is facing same problems as me.


