Hi Leute!
Habe hier ein riesiges Problem mit einem Shellscript, das ein
Installationsprogramm installer-fe aufrufen soll.
Bei der Ausf�hrung beendet das Script mit folgendem Fehler:
installer: line 111: 951 Illegal instruction
"$runtimePath/$ARCH/bin/installer-fe" "$sourcePath" "$updatesPath"
"$runtimePath"
Zur Verdeutlichung: Das soll nichts anderes machen, als den Pfad zu dem
eigentlichen Installationsprogramm zu finden!
Auf anderen Maschinen unterschiedlichster Distributionen l�uft das
Script wunderbar...
Auf meiner Maschine mir Standard Server Installation SuSE 8.0 / 8.1 /
Redhat 7.3 (Alles sch�n brav auf eigenen Platten) funzt das nicht.
Ist das ein Hardwaredefekt?!?
Oder wie kann ich mir das erkl�ren, dass die Variablen nicht aufgel��t,
sondern so geerrort (mmh... mir fehlen die Worte) werden.
Das Skript kommt am Ende, die Zeile ist markiert.
Ich bin f�r jede Hilfe dankbar!
...und kurz vorm Verweifeln.
Dank und Gru�
Patrick Schulz
---megasnip---
unknownArch()
{
echo "Cannot determine the machine architecture!" >&2
echo "Please pass the architecture as a parameter e.g.:" >&2
prg=`basename $0`
echo "$prg linux" >&2
}
guessArch()
{
case `uname -s` in
AIX)
ARCH=rs6000
/usr/sbin/slibclean
LIBPATH="$runtimePath/$ARCH/lib"
export LIBPATH
;;
IRIX*)
ARCH=sgi
LD_LIBRARY_PATH="$runtimePath/$ARCH/lib"
export LD_LIBRARY_PATH
;;
OSF1)
if [ `uname -m` = alpha ]; then
ARCH=alpha
else
unknownArch $@
exit 1
fi
LD_LIBRARY_PATH="$runtimePath/$ARCH/lib"
export LD_LIBRARY_PATH
;;
HP-UX)
ARCH=hppa
SHLIB_PATH="$runtimePath/$ARCH/lib"
export SHLIB_PATH
;;
SunOS)
if [ -d /devices ]; then
case `uname -p` in
sparc)
ARCH=sol4
;;
*)
unknownArch $@
exit 1
;;
esac
else
ARCH=`/bin/arch`
fi
LD_LIBRARY_PATH="$runtimePath/$ARCH/lib"
export LD_LIBRARY_PATH
;;
Darwin)
case `/usr/bin/arch` in
ppc)
ARCH=macosx
;;
*)
unknownArch $@
exit 1
;;
esac
DYLD_LIBRARY_PATH="$runtimePath/$ARCH/lib"
export DYLD_LIBRARY_PATH
# If started via the workspace the superuser PATH
# does not include the essential directories.
PATH=$PATH:/sbin:/usr/sbin
export PATH
;;
Linux)
case `uname -m` in
i?86)
ARCH=linux
;;
*)
unknownArch $@
exit 1
;;
esac
LD_LIBRARY_PATH="$runtimePath/$ARCH/lib"
export LD_LIBRARY_PATH
;;
*)
unknownArch $@
exit 1
;;
esac
}
setSearchPaths()
{
if expr "$0" : "\/" >/dev/null
then
me="$0"
else
me=`expr "$0" : "\.\/\(.*\)"`
if test $? -ne 0
then
me="$0"
fi
me="`pwd`/$me"
fi
workDir=`dirname "$me"` ######################## <- Das ist
Zeile 111
sourcePath="$workDir/products"
updatesPath="$workDir/updates"
runtimePath="$workDir/runtime"
}
main()
{
setSearchPaths "$@"
if [ -n "$1" ]; then
ARCH="$1"
else
guessArch "$@"
fi
TERMINFO="$runtimePath/terminfo"
export TERMINFO
"$runtimePath/$ARCH/bin/installer-fe" "$sourcePath"
"$updatesPath" "$runtimePath"
}
main "$@"
exit 0
---megasnap---
----------------------------------------------------------------------------
PUG - Penguin User Group Wiesbaden - http://www.pug.org