|
From: <Hau...@gm...> - 2004-02-29 04:55:01
|
Dear CLISP developers,
I tried to install clisp-2.32 with mit-clx on my Linux box:
SuSE Linux 7.0 (i386),
Kernel 2.2.16,
gcc 2.95.2,
GNU bash 2.04,
GNU sed version 3.02.
Doing a 'make' in the 'src' directory failed:
...
...
;; Loaded file /opt2/ah/src/lang/lisp/clisp/clisp-2.32/src/clx/mit-clx/trace.fas
2297280 ;
574320
sed: -e expression #1, char 122: Unknown option to 's'
make: *** [full] Error 1
The reason was a 'sed' syntax error in the file 'clisp-link'
(made visible by enabling the 'set -x' in the file ).
The substitute command uses a comma ',' as delimiter for the old and new strings.
After shell expansion of $LIBS the new string also contained commas,
so sed's substitute command got confused, seeing too much delimiters...
Changing the delimiter to ':' fixed the problem, I could compile
the whole thing!
Here a diff -u between the original and the patched 'clisp-link' file:
--8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<--
--- clisp-link-orig Sun Feb 29 04:37:34 2004
+++ clisp-link-new Sun Feb 29 04:38:04 2004
@@ -284,8 +284,8 @@
echo "LIBS: before: "$LIBS
LIBS=`echo $LIBS | sed s/','/'\\\\,'/g`
echo "LIBS: after: "$LIBS
- # Done.
sed -e "s,^LIBS=.*\$,LIBS='${LIBS}'," -e "s,^FILES=.*\$,FILES='${FILES}'," < "$sourcedir"/ma
kevars > "$destinationdir"/makevars
+ # Done.
trap '' 1 2 15
;;
@@ -423,7 +423,7 @@
fi
# Generate new makevars
LIBS=`echo $LIBS | sed s/','/'\\,'/g`
- sed -e "s,^LIBS=.*\$,LIBS='${LIBS}'," -e "s,^FILES=.*\$,FILES='${FILES}'," < "$sourcedir"/
makevars > "$destinationdir"/makevars
+ sed -e "s:^LIBS=.*\$:LIBS='${LIBS}':" -e "s,^FILES=.*\$,FILES='${FILES}'," < "$sourcedir"/
makevars > "$destinationdir"/makevars
fi
# Done.
trap '' 1 2 15
--8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<--
Just in case someone runs into the same problem...
Thank you for supplying the world with a nice lisp version,
I like CLISP very much, yet I'm still a lisp greenhorn...
Greetings from Austria
Andreas Haunschmidt
mail: Hau...@gm...
P.S.:
Sorry for that lengthy description of replacing ',' by ':' in a line :)
|