Сообщение об ошибке предполагает, что вызываемый вами скрипт имеет встроенные \rсимволы , что, в свою очередь, предполагает, что он имеет окончания строки в стиле Windows,\r\n а не \nожидаемые окончания строки bash.
В качестве быстрого исправления вы можете удалить \rсимволы. следующим образом:
sed $'s/\r$//' ./install.sh > ./install.Unix.sh
Примечание: $'...'строка является ANSI-C строка в кавычках поддерживается bash, kshи zsh. Он используется для обеспечения того, \rчтобы символ расширялся до фактического символа CR до того, как sedувидит сценарий, потому что не все sedреализации сами по себе поддерживают \rescape-последовательность.
а затем запустить
./install.Unix.sh --clang-completer
Однако более серьезный вопрос заключается в том, почему у вас \r\nостались файлы -style - скорее всего, затронуты и другие файлы.
Возможно , вы работаете с Git на Windows , , где типичная конфигурация заключается в преобразовании Unix-стиль \n-Только разрывов строк в Windows , стиль \r\nразрывы строк на проверку файлов из и повторного преобразования в \n-Только разрывы строк на совершение .
Хотя это имеет смысл для разработки под Windows, это мешает подобным сценариям установки .
Чтобы Git извлекал файлы с окончанием файлов в стиле Unix в Windows - хотя бы временно - используйте:
git config --global core.autocrlf false
Затем git cloneснова запустите ваши команды установки .
Чтобы позже восстановить поведение Git, запустите git config --global core.autocrlf true.
find . -type f -exec dos2unix {} \;