Übersicht
Stichwortsuche
History
Versionen
Kategorien
Alle Artikel
English
SuSE Linux: Version 4.2
Mathematica
math.install
beendet
sich ohne zu installierenmath.install
beendet sich ohne zu installieren
math.install
ist eine Zeile vorhanden:
mydir=`expr $0'/' : '\(/\)[^/]*//*$' \| $0'/' : '\(.*[^/]\)//*[^/][^/]*//*$' \| .`In dieser Zeile wird versucht, das Verzeichnis aus dem das Script liegt, zu ermitteln.
Es ist ein Fehler im expr
-Programm bzw. in der verwendeten
Regex-Funktionen aus der libc.so.5.2.18
.
In Zukunft werden wir expr
mit anderen Regex-Funktionen
linken.
math.install
obige Zeile in:
mydir=/usr/local/math/Installbzw. wo Sie Mathematica installiert haben. In S.u.S.E. Linux 4.3 wird das Problem nicht mehr auftreten, Sie können auch das Paket updaten, siehe ftp://ftp.suse.de/pub, ob es schon ein neues Paket für
expr
gibt (Paket shutils).
xfe.install
)xfe.install
die entsprechende Zeile analog.
#!/bin/sh #--------------------------- Testscript z.B. /home/alex/kfr/tmp/braune ------ echo "\$0:$0" echo dirname:`dirname $0` #myd=`expr $0'/' : '\(/\)[^/]*//*$' \| $0'/' : '\(.*[^/]\)//*[^/][^/]*//*$' \| .` myd=`expr $0'/' : '[^/]*//*$' \| 'NO'` echo "myd:$myd" myd=`expr $0'/' : '\(/\)[^/]*/*$' \| 'NO'` echo "myd:$myd" myd=`expr $0'/' : '\(.*[^/]\)//*[^/][^/]*//*$' \| 'NO'` echo "myd:$myd"Falsch ist:
+/tmp $ expr --version expr - GNU sh-utils 1.12 +/tmp $ `pwd`/braune $0:/home/alex/kfr/tmp/braune dirname:/home/alex/kfr/tmp myd:NO myd:NO myd:/home/alex/kfr/tmp +/tmp $ ./braune $0:./braune dirname:. myd:NO myd:/ myd:. +/tmp $Richtig ist:
+/tmp $ expr --version expr - GNU sh-utils 1.12 +/tmp $ `pwd`/braune $0:/home/alex/kfr/tmp/braune dirname:/home/alex/kfr/tmp myd:NO myd:NO myd:/home/alex/kfr/tmp +/tmp $ ./braune $0:./braune dirname:. myd:NO myd:NO myd:. +/tmp $Entscheidend ist, warum bei "./braune" beim 2. Ausdruck ein "/" geliefert wird, was es nicht soll.
Wie man sieht, funktioniert "dirname" immer richtig. Aus Kompatibilitätsgründen, kann man das aber leider nicht immer verwenden.
Siehe auch:
Stichwörter: MATHEMATICA, LIBC, EXPR, MATH.INSTALL, XFE.INSTALL
Kategorien:
Kommerzielle Applikationen
Übersicht
Stichwortsuche
History
Versionen
Kategorien
Alle Artikel
English