Makefile error: Unexpected end-of-line gesehen
Versucht zu installieren, Git, ich lief konfigurieren und zu machen, bekam aber folgende Fehlermeldung:
make: Fatal error in reader: Makefile,
Linie 221: Unerwartetes Ende der Zeile gesehen
Das Makefile sieht folgendermaßen aus:
218: GIT-VERSION-FILE: FORCE
219: @$(SHELL_PATH) ./GIT-VERSION-GEN
220: -include GIT-VERSION-FILE
221:
222: uname_S := $(shell sh -c 'uname -s 2>/dev/null øø echo not')
Was den Fehler verursacht?
Folgende Informationen, die möglicherweise oder möglicherweise nicht relevant:
- Habe ich versucht zu installieren Git 1.7.0.3 auf
SunOS 5.9 (Solaris 9) in einem Verzeichnis, die in meinem Konto. - Die gcc version 3.4.2 (älter, dann die
version 3.4.6 angegeben durch
sunfreeware.com). - Ich habe keine root-Rechte.
- Die make-version wäre wichtiger als der gcc-version. Vielleicht ist es zu alt, zu unterstützen
-include
die Richtlinie? - oder es ist nicht GNU Make...die Sonne ist wohl nicht verstehen '-include' - und erwarten entweder ein Doppelpunkt oder ein Gleichheitszeichen auf der Linie 220 (da es kann nicht ein Befehl, weil das erste Zeichen nicht ein tab), und alle anderen Zeilen sind Kommentare, die Regeln (mit einem Doppelpunkt) oder Makros (mit einem "ist gleich") und Linie 220 passt nicht jeder von denen.
- Wenn Ihr Makefile sagt wirklich
øø
dann ist es irgendwie beschädigt wurde. Es sollte||
. Versuchen Sie den Download erneut. - vielleicht Winston arbeitet mit eine skandinavische (Dänische?) der code wo ø wird an der code-Stelle, wo | erscheint in 8859-1.
- Jefromi, Jonathan Leffler: Hier ist die information über Hersteller: RELEASE-VERSION SunOS 5.9 Patch 111703-03 Oktober 2002. @mark4o, Jonathan Leffler: ich weiß nicht, wie das || wurde geändert. Vielleicht von kopieren und einfügen, oder ich drücke die falschen Tasten. Nach Ihrer Kommentare, die ich verwendet, gmake (3.80, 2002) und bekommen Fehlermeldungen über die include-Dateien von openssl. Muss ich Fragen, root zu installieren, Abhängigkeiten? Oder kann ich Sie installieren lokal und sagen, gmake, wo sind Sie zu finden?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit
gmake
auf SunOS stattmake
behoben dieses Problem für mich.Verwenden
gmake
stattmake
.Genrally solaris hat zwei Befehls
gmake
undmake
. In diesemgmake
GNU-Stil-make-Befehl, undmake
solaris-Stil-make-Befehl. Ich hoffe, du hast geschrieben dein makefile im GNU-Stil. So verwendengmake
Befehl.Dies ist möglicherweise aufgrund von DOS-zeilenendungen (CRLF) in deinem makefile. Ich habe gerade ein ähnliches problem hatte und es gelöst durch dos2unix laufen auf den makefile. Linux machen, scheint völlig unbeeindruckt von den gleichen makefile.
Es ein problem mit Ihrem "make" installieren "make-3.81.tar" und dann versuchen
Stellen Sie sicher, dass Sie tatsächlich Registerkarten der Linie und es ist nicht alle Räume. Ich hatte dieses Problem, aber ich fand heraus, der Befehl wurde nicht korrekt Registerkarten, und das ist, warum ich in diese Fehlermeldung.
Kam ich zu diesem Fehler mit 2 einfachen makefiles, eine, die arbeitete, und eine, die produziert den Fehler.
Beide hatten richtig tabbed-Linien, und beide hatten "CRLF" Zeilenenden.
Für einen oder anderen Grund, habe ich es geschafft, das problem zu beheben, indem Sie ändern die Zeilenenden auf "LF", aber ich bin verwirrt, warum die anderen makefile war erfolgreich analysiert auch wenn es "CRLF" enden. Es gibt jedoch einen Anhaltspunkt: die ersten ein oder zwei mal "machen", gab ein weiterer Fehler:
Nach dem öffnen der Datei makefile in einem text-editor, und das hinzufügen einer Zeile Ende, es begann mit der Herstellung der OP-Fehler.
In dieser situation ist es gut, einen editor, können Sie anzeigen, Zeilenenden und tabs.