Ik probeer YouCompleteMe te installeren vanaf hier.
Als ik uitvoer:
./install.sh --clang-completer
Ik krijg deze foutmelding:
env: bash\r: No such file or directory
Ik weet niet wat er mis is met omgevingsvariabelen. Dit is mijn bash-pad:
which bash
/bin/bash
Moet ik dit veranderen in /usr/bash
? Zo ja, hoe moet ik dat dan doen? Ik heb geprobeerd het bestand ~/.bashrc
te wijzigen, maar het werkte niet.
Antwoord 1, autoriteit 100%
De foutmelding suggereert dat het script dat u aanroept, ingesloten \r
-tekensheeft, wat op zijn beurt suggereert dat het Windows-achtige \r\n
regeluitgangenin plaats van de \n
-alleen regeluitgangen die bash
verwacht.
Als een snelle oplossingkun je de tekens \r
verwijderen. als volgt:
sed $'s/\r$//' ./install.sh > ./install.Unix.sh
Opmerking: de tekenreeks $'...'
is een ANSI-C aanhalingstekensondersteund in bash
, ksh
en zsh
. Het wordt gebruikt om ervoor te zorgen dat de \r
uitbreidt tot een echt CR-teken voordat sed
het script ziet, omdat niet alle sed
-implementaties zelf ondersteuning bieden voor \r
als een escape-reeks.
en dan uitvoeren
./install.Unix.sh --clang-completer
De grotere vraag is echter waarom je met \r\n
-achtige bestanden bent beland – hoogstwaarschijnlijk worden ook andere bestanden beïnvloed.
Misschien draai je Git op Windows, waar een typische configuratie is om Unix-stijl \n
-only regeleinden te converteren naar Windows-stijl \r\n
regeleinden bij bestanden uitcheckenen opnieuw converteren naar \n
-alleen regeleinden bij vastleggen.
Hoewel dit logisch is voor ontwikkelingop Windows, belemmert het installatiescenario’szoals deze .
Om Git bestanden te laten uitchecken met Unix-achtige bestandsuitgangen op Windows– in ieder geval tijdelijk – gebruik:
git config --global core.autocrlf false
Voer vervolgens uw installatieopdrachten met betrekking tot git clone
opnieuw uit.
Om het gedrag van Git later te herstellen, voer je git config --global core.autocrlf true
uit.
Antwoord 2, autoriteit 20%
>vim gradlew
:set fileformat=unix
:wq
>./gradlew clean build
Antwoord 3, autoriteit 13%
Zoals de bovenstaande opmerkingen zeggen, gebeurt dit vanwege regeleindes in Windows. Volg deze stappen om het probleem op te lossen
Voor MAC:
brew install dos2unix # Installs dos2unix Mac
find . -type f -exec dos2unix {} \; # recursively removes windows related stuff
Voor Linux:
sudo apt-get install -y dos2unix # Installs dos2unix Linux
sudo find . -type f -exec dos2unix {} \; # recursively removes windows related stuff
En zorg ervoor dat je git-configuratie als volgt is ingesteld:
git config --global core.autocrlf input
Antwoord 4, autoriteit 9%
Uw bestand heeft Windows-regeleindes. Verander naar Unix regeleindes.
5
Deze link heeft me geholpen bij het oplossen van het probleem.
https://github.com/tiangolo/uwsgi-nginx-flaskas- Docker / problemen / 127
Ik bewerkte mijn .SH-bestand, vervanging van alle CRLF met LF
Antwoord 6
Ik had dit probleem vroeger toen ik Flutter probeerde te downgraden
dit heeft mijn probleem opgelost
rm -rf flutter
git config --global core.autocrlf false
git clone [email protected]:flutter/flutter.git
flutter channel stable