Wednesday, June 28, 2017

EBS -- 12.2.0 Installation on SOLARIS 5.11 / make: Failed linking targets / "modifying the stage files, my solution"

Recently solved an issue in my forum.
It was reported for an EBS 12.2 VISION install.
The host platform was SOLARIS 5.11, and its patch levels were quite up-to-date.
Although, all the prerequisuites were met in the OS level, the EBS installer-rapidwiz was failing  at %65, while running adrunfmw.sh and doing some make operations.


I first recommended the issue owner to make the binary manually;

make -f ins_forms.mk frmweb_install frmcmp_install frmcmpb_install frmbld_install frmsrv_install ORACLE_HOME=$ORACLE_HOME

During the manual make, ld was complaining about libzfs.so

ld: warning: file libshare.so.1: required by /usr/lib/libzfs.so.1, not found
ld: warning: file libkmf.so.1: required by /usr/lib/libzfs.so.1, not found
ld: warning: file libxprop.so.1: required by /usr/lib/libzfs.so.1, not found


Then, I concluded that it was related with Bug 24824744 and recommended the following;

Modify adlnktools.sh and include the LD_OPTIONS as recommended ->
LD_OPTIONS="-L/lib -L/lib/sparcv9"
export LD_OPTIONS 


Lastly try to execute "make" again..

This time, the same "make" command successfully completed.

However, this wasn't the complete solution. Because the failing thing was the EBS Installer, the rapidwiz and since there was no ignore button in the rapidwiz; it is not possible to continue EBS 12.2 installation once this error is produced.

So, I needed to find a solution for rapidwiz... I mean, rapidwiz should regard the recommended LD_OPTIONS settings.

At this point, I analyzed the failing make command and the related makefile that is used by rapidwiz...
I saw that the problem was caused by some make commands related with Reports and recommended the following ->

Locate inst_reports.mk file in your stage directory.
In my stage, it is in EBSInstallMedia/AS10.1.2/Disk1/appsts/stage/tools34_reports.zip.

unzip it and you will find the file reports/lib32/ins_reports.mk

Modify that file to include LD_OPTIONS for every relink/compile for every executable.
Rename your old tools34_reports.zip (rename it as tools34_old.zip)
After that, zip the contents that you unzipped earlier with the name tools34_reports.zip
At this point, your new tools34_reports.zip file will include a modified ins_reports.mk
Lastly, re-execute rapidwiz.

Note: append the relevant line if it already included LD_OPTIONS

Example 1:

Before the change:

$(LIBSRWUSO):
rm -f rwsutil.o rwspid.o ; \
$(AR) x $(LIBSRWU) rwsutil.o rwspid.o ; \
(LD_OPTIONS="-z muldefs"; \
$(SOSD_REPORTS_LDSHARED) rwsutil.o rwspid.o \
-lm $(LIBCLNTSH) $(LLIBTHREAD) $(MOTIFLIBS) $(SYSLIBS) -lc )

After the change:

$(LIBSRWUSO):
rm -f rwsutil.o rwspid.o ; \
$(AR) x $(LIBSRWU) rwsutil.o rwspid.o ; \
(LD_OPTIONS="-L/lib -L/lib/sparcv9 -z muldefs"; \
$(SOSD_REPORTS_LDSHARED) rwsutil.o rwspid.o \
-lm $(LIBCLNTSH) $(LLIBTHREAD) $(MOTIFLIBS) $(SYSLIBS) -lc )

Example 2:

Before:

$(RRUNM) rwrun${RW_VERSION}x:
$(LINK) $(JVMLIB) $(RXMARB) $(RUNSTUB) $(LIBSBM)

After:
$(RRUNM) rwrun${RW_VERSION}x:
LD_OPTIONS="-L/lib -L/lib/sparcv9" \
$(LINK) $(JVMLIB) $(RXMARB) $(RUNSTUB) $(LIBSBM)


After taking these actions, the issue got resolved! :) EBS installation was successfully completed. Pretty interesting right?
So , I almost wrote a patch for EBS on Solaris installation today :)

You can read the full thread using the following url: http://erman-arslan-s-oracle-forum.2340467.n4.nabble.com/R12-2-VISION-Iinstallation-td2822.html

No comments :

Post a Comment