Hallo,
Make weigert sich mein Programm zu compilieren weil
"Makefile:648: *** missing separator. Schluss."
In Anderen Sources hab ich dieses Steuerzeichen gefunden \^M
aber wie geb ich das in vim ein?
Vielen Dank
Probleme mit Makefile.am
- Payne_of_Death
- Beiträge: 484
- Registriert: 16.05.2004 20:21:30
-
Kontaktdaten:
Probleme mit Makefile.am
Das System was mich zu Fall bringt muss erst mal geboren werden.
ganz zu Fuss:
Die enthaltende Datei mit ">>" an das Makefile ankleben.
Dann den entsprechenden Teil mit copy+paste (mcedit) an die entsprechende Stelle befördern.
Oder den Oktalcode eingeben, vim hat dazu bestimmt eine Möglichkeit.
Den Code sollte ausgeben.
Erzeugen kannst Du das Zeichen zBsp mit
Die enthaltende Datei mit ">>" an das Makefile ankleben.
Dann den entsprechenden Teil mit copy+paste (mcedit) an die entsprechende Stelle befördern.
Oder den Oktalcode eingeben, vim hat dazu bestimmt eine Möglichkeit.
Den Code sollte
Code: Alles auswählen
hexdump -b DATEI
Erzeugen kannst Du das Zeichen zBsp mit
Code: Alles auswählen
echo -e "\NNN"
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
Du hast anscheinend einen Formatierungsfehler in deinem Makefile ( Makefile.am )Payne_of_Death hat geschrieben: Make weigert sich mein Programm zu compilieren weil
"Makefile:648: *** missing separator. Schluss."
Hier ein Beispiel:
Wenn vor dem "echo" ein Tablulator steht funktioniert es:
Code: Alles auswählen
gms@gms4:~$ cat Makefile
quelle:
ziel: quelle
echo erstelle ziel aus quelle
gms@gms4:~$ make
make: Für das Ziel »quelle« ist nichts zu tun.
Code: Alles auswählen
gms@gms4:~$ cat Makefile
quelle:
ziel: quelle
echo erstelle ziel aus quelle
gms@gms4:~$ make
Makefile:4: *** missing separator. Schluss.
Das erste Zeichen ist ein Backslash ( unter C/C++ bedeutet daß, das die Zeile fortgesetzt wird ), mit ^M wird zumeist das Carriage Return dargestellt.Payne_of_Death hat geschrieben: In Anderen Sources hab ich dieses Steuerzeichen gefunden \^M
In Textdateien, die unter DOS bzw Windows erzeugt wurden, wird ein Zeilenumbruch von 0x0D0A verwendet, unter Unix wird jedoch ein Zeilenumbruch von 0x0A verwendet. Daher zeigen Texteditoren, die keine Unterstützung für DOS/Windows Dateien bieten, dieses zusätzliche 0x0D Zeichen an ( der alte vi z.B. als ^M )
Gruß
gms