cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
samrat
Level 2

Linux installer issue

Hi

While installing an installer(created from InstallerAnywhere) on rehat linux enterprise 5 edition, I received the following error


…error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory


While searching on the net for this issue I found a solution as follows:


… the zerog installer has LD_ASSUME_KERNEL. If you want to install a product on linux whose installer was built by zerog, you have to do vim -b theinstaller.bin and then change
export LD_ASSUME_KERNEL=2.2.5
to
#xport LD_ASSUME_KERNEL=2.2.5



But the problem is, every time changing the installer or asking client to do so is not feasible.
Do we have any option through Installer Anywhere 6.0 or 8.0 to make this change permanently when the installer is being created?

Regards
Samrat
Labels (1)
0 Kudos
(6) Replies
pv7721
Level 20

What is your IA version?
0 Kudos
samrat
Level 2

I have Install Anywhere version 6.0. But i have tried it on IA 8.0 also and have faced same issue.
0 Kudos
pv7721
Level 20

I think this issue got fixed since (maybe in IA 8.0.1).
0 Kudos
trushant
Level 3

I am facing the same problem too. I did try with 8.0.1 but the problem is not fixed in too 😞 ... Can anybody other confirm this?

Also can anybody give the version in which this issue does not arise 🙂
0 Kudos
jerome_IA
Level 9

One option to workaround this (if not the only solution ?) is to generate a script to execute instead of the install.bin.

This script should test the posix compatibility, and then modify the install.bin if needed.

e.g. create script "install.sh" which will contain:

LD_ASSUME_KERNEL=2.2.5 /bin/ls
=> this command test the posix compatibility.
If no error is returned, then you can execute the "install.bin" as is.
If there is an error, then you need to modify "install.bin" by doing:
cat install.bin | sed "s/export LD_ASSUME_KERNEL/#xport LD_ASSUME_KERNEL/" > new_install.bin
And finally execute the "new_install.bin"


If anyone has a better solution, please just tell.

Regards
0 Kudos
pv7721
Level 20

trushant, in your case it happens on what Linux distribution? And please trust me when I say this was fixed in IA 8. I've said it before: http://community.zerog.com/cgi-bin/ikonboard.cgi?s=4860c36262d0ffff;act=ST;f=12;t=8862;hl=error+while+loading+shared+libraries+libc.so.6+cannot+open+shared+object+file+no+such+file+or+dir
and this time I've also rechecked. All you have to do is to go to your IA installations (7.1.3 and 😎 and compare in in the resources\launchanywheres\unix subfolders the laxunix.sh files. You'll see in the 7.1.3 the following block of code:

[CODE] eval `$actvm -version 2>&1 | $AWK '
BEGIN {
vendor="Sun"
}
/"[0-9]\.[0-9]\.[0-9][^"]*"$/ {
gsub ("[\"]", "", $3)
split ($3, ver, "[\._-]")
printf "v_major=%s\nv_minor=%s\nv_patch=%s\n",ver[1],ver[2],ver[3]
}
/IBM/ {
vendor="IBM"
}
END {
printf "v_vendor=%s\n",vendor
}
' `

# unset the LD_ASSUME_KERNEL in cause we don't need it
unset LD_ASSUME_KERNEL

debugOut "major : ${v_major}"
debugOut "minor : ${v_minor}"
debugOut "patch : ${v_patch}"
debugOut "vendor: ${v_vendor}"

# check our rules for setting LD_ASSUME_KERNEL
# currently, we're only setting this for JVMS < 1.4
# we can add more rules later, if we need to.
if [ ${v_minor:-0} -lt 4 ]; then
debugOut "Vulnerable JVM detected... implementing workaround"
linux_LD_ASSUME_KERNEL_hack=1
else
debugOut "Your JVM is OK! Congratulations!"
fi
[/CODE]

whereas in IA 8 this has been changed to:

[CODE] $actvm -version > /dev/null 2> /dev/null
if [ "$?" -eq "0" ]; then

eval `$actvm -version 2>&1 | $AWK '
BEGIN {
vendor="Sun"
}
/"[0-9]\.[0-9]\.[0-9][^"]*"$/ {
gsub ("[\"]", "", $3)
split ($3, ver, "[\._-]")
printf "v_major=%s\nv_minor=%s\nv_patch=%s\n",ver[1],ver[2],ver[3]
}
/IBM/ {
vendor="IBM"
}
END {
printf "v_vendor=%s\n",vendor
}
' `

# unset the LD_ASSUME_KERNEL in cause we don't need it
unset LD_ASSUME_KERNEL

debugOut "major : ${v_major}"
debugOut "minor : ${v_minor}"
debugOut "patch : ${v_patch}"
debugOut "vendor: ${v_vendor}"

# check our rules for setting LD_ASSUME_KERNEL
# currently, we're only setting this for JVMS < 1.4
# we can add more rules later, if we need to.
if [ ${v_minor:-0} -lt 4 ]; then
debugOut "Vulnerable JVM detected... implementing workaround"
linux_LD_ASSUME_KERNEL_hack=1
else
debugOut "Your JVM is OK! Congratulations!"
fi
else
unset LD_ASSUME_KERNEL
fi
fi
fi
[/CODE]

(it has been wrapped in a test of the active VM!)
0 Kudos