Makefile:1 *** отсутствует разделитель
Мой make-файл не запускается по какой-то причине. Этот код взят от одного из моих инструкторов по запуску make-файла для Java-программ. Это называется Makefile
all:
javac cs286_p1/*.javac
jar cmf manifest.mf cs286_p1.jar cs286_p1
@echo "+ to run type: java -jar exampleProgram.jar"
@echo "+ to run with command line arguments, simply append them to the line above"
Я бегал cat -e -t -v Makefile
чтобы увидеть, каков был результат, и это было так:
$ cat -e -t -v Makefile
all:^M$
^Ijavac cs286_p1/*.javac^M$
^Ijar cmf manifest.mf cs286_p1.jar cs286_p1^M$
^I@echo "+ to run type: java -jar exampleProgram.jar"^M$
^I@echo "+ to run with command line arguments, simply append them to the line above"^M$
Любая помощь с этим?
РЕДАКТИРОВАТЬ: Кажется, как будто dos2unix не работает. Я отредактировал файл, чтобы убрать ~$. Я редактирую и работаю над этим в среде linux, к которой я сейчас подключен, однако я запустил это в Notepad++ и убедился, что ANSII была кодировкой. Все еще не работает, однако, что-нибудь еще, о чем можно подумать?
1 ответ
Похоже, у вас есть окончания строки Microsoft (возврат каретки + перевод строки, x0d0a вместо одного перевода строки, x0a). Вы редактировали этот файл в Windows, я полагаю.
Если вы хотите продолжить делать это, вы должны либо получить редактор Windows, такой как notepad++, который может управлять окончаниями строк (как в Linux, так и в Windows), или же вы примените dos2unix Makefile
,