19

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:

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?

cocomac
  • 3,824
batur
  • 193

2 Answers2

34

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's shebangs.

steeldriver
  • 142,475
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.

Severo Raz
  • 6,111