Saya sedang menginstal lingkungan perangkat lunak dari papan percobaan Armadeus APF27DEV, dan ketika saya mencoba make
perintah itu, itu memberi saya pesan kesalahan berikut:
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
Untuk mengatasi kesalahan ini, saya telah mencoba mengubah semua shebang dari #!/bin/sh
menjadi #!/bin/bash
, dan saya juga mencoba baris perintah berikut:
ln -s /bin/bash /bin/sh
Tapi, semua yang saya lakukan tidak menyelesaikan masalah. Adakah yang bisa membantu saya mengatasi masalah ini?
bash
make
symbolic-link
Batur
sumber
sumber
Jawaban:
Anda hampir berada di sana dengan perintah ln Anda - kecuali Anda mungkin perlu menyertakan flag -f ('force') untuk menimpa tautan lama - juga lebih baik menggunakan jalur relatif untuk target
Setelah selesai menginstal, Anda dapat kembali ke sistem default dengan
Seharusnya tidak perlu mengubah file script 'shebangs'
sumber
sudo dpkg-reconffigure dash
dan memilih opsi untuk tidak menggunakan tanda hubung untuk disediakan/bin/sh
. Jika Anda melakukannya dengan dpkg, itu akan memperbarui bagian lain dari sistem Anda (seperti halaman manual) agar sesuai.Masalahnya tidak boleh
/bin/sh
menunjuk padadash
karena itu default (saya baru saja memeriksa ujung saya dan itu sama). Masalahnya harus di tempat lain; paket tampaknya tidak kompatibel dengan Ubuntu out-of-the-box.Mungkin di Makefile Anda dapat menemukan baris yang mengeksekusi skrip melalui
sh
secara eksplisit, yaitush path/to/script
. Ganti semua kejadiansh
untukbash
, dan laporkan kembali hasil Anda.sumber