/bin/sh is a symbolic link that doesn't point to /bin/bash [closed]
I was installing the software environment of Armadeus experiment board APF27DEV, and when I tried the make
command, it gave me the following error message:
On your system /bin/sh is a symbolic link that doesn't point to /bin/bash --> please correct that !
lrwxrwxrwx 1 root root 4 2013-08-03 20:57 /bin/sh -> dash
To resolve this error, I've tried to change all the shebangs from #!/bin/sh
to #!/bin/bash
, and I've also tried the following command line:
ln -s /bin/bash /bin/sh
But, all that I've done didn't resolve the problem. Could anyone please help me out with this problem?
Solution 1:
You were almost there with your ln command - except you probably needed to include the -f flag ('force') in order to overwrite the old link - also it's preferable to use a relative path for the target
sudo ln -sf bash /bin/sh
When you're done with the install, you can revert to the system default with
sudo ln -sf dash /bin/sh
There should be no need to change the script file 'shebangs'
Solution 2:
The problem must not be /bin/sh
pointing at dash
because that's default (I just checked on my end and it was the same). The problem must be elsewhere; the package doesn't seem to be compatible with Ubuntu out-of-the-box.
Perhaps in the Makefile you may find a line executing a script through sh
explicitly, i.e. sh path/to/script
. Replace all such occurrences of sh
for bash
, and report back your results.