When I update the latest svn (5197) on Ubuntu, compile, then execute ./update, I get the following error:
pecan@ubuntu:~/devel/trunk/src$ ./update
Creating output directory tree
Compressing core UI resources
Compressing plugins UI resources
Packing core UI bitmaps
Packing plugins UI bitmaps
Copying files
Stripping debug info from output tree
[: 114: ==: unexpected operator
Shouldn't line 100 be:
if [ "x$MSYSTEM" = "x" ] ; then
*not*
if [ "x$MSYSTEM" == "x" ] ; then
Line 114 is "fi" but:
http://www.comptechdoc.org/os/linux/usersguide/linux_ugshellpro.html
Shell Programming
shows syntax for Bash as:
# string1 = string2 = True if the strings are equal.
# string1 != string2 = True if the strings are not equal.
not "=="
and when I change it to a single =, the ./update script works.
I recently accepted the Ubuntu update, so that might have done this.
./Update as downloaded
(http://img120.imageshack.us/img120/6708/340fe2.png)
Synaptic entry:
(http://img120.imageshack.us/img120/4146/341dr1.png)
Which shell is used if "/bin/sh" is called (as the update-script does) ?
jens@debian-inspiron:~$ ll /bin/sh
lrwxrwxrwx 1 root root 4 13. Mai 09:34 /bin/sh -> bash
jens@debian-inspiron:~$
Nevertheless if it does not work with the "==" I can commit a change that only uses the "=", that should work (hopefully) with all shells.
EDIT:
Should be fixed in svn r5199.
It looks like my shell got set to something called "dash" during the update. I have no idea what that is.
Should I set my shell back to bash?
pecan@ubuntu:~$ ll /bin/sh
lrwxrwxrwx 1 root root 4 2007-05-06 11:41 /bin/sh -> dash
https://wiki.ubuntu.com/DashAsBinSh
Dash as /bin/sh
In Ubuntu 6.10, the default system shell, /bin/sh, was changed to dash (the Debian Almquist Shell); previously it had been bash (the GNU Bourne-Again Shell). The same change will affect users of Ubuntu 6.06 LTS upgrading directly to Ubuntu 8.04 LTS. This document explains this change and what you should do if you encounter problems.
The default login shell remains bash.
Actually, I'm using Ubuntu 8.04, and this error only started after I accepted the second round of updates to 8.04