ОШИБКА: auto-makefile - символ NUL / пропавший разделитель - PullRequest
3 голосов
/ 01 января 2012

ОС: Mac OS X 10.7 (Lion)

Программа (IDE): Eclipse CDT


В настоящее время я изучаю продвинутый C ++, используя среду разработки eclipse. (У меня есть причины.) Проблема, над которой я работал в течение нескольких часов, - это ошибка при сборке моей программы. По сути, make-файл автоматически генерируется для моего проекта, когда я запрашиваю сборку; проблема в том, что сам make-файл, кажется, получает ошибку и появляется в консоли так:

**** Build of configuration Release for project TEST ****

make all 
makefile:1: warning: NUL character seen; rest of line ignored
makefile:1: *** missing separator.  Stop.

**** Build Finished ****

Я искал решение обеих перечисленных проблем, ни одна из которых не существовала. Как ни странно, первая строка (и) - это просто строка комментариев «#». Даже более странно, что IDE (или анализаторы ошибок), похоже, не понимают, где на самом деле находится ошибка, потому что символ ошибки перемещается при выполнении определенных действий. Что меня действительно поражает, так это то, что этот make-файл был сгенерирован автоматически, и я не сделал никаких изменений в настройках, связанных с make-файлом (по умолчанию используется make-файл GNU, но я безуспешно попробовал make-файл Posix). Я даже вообще переустановил Eclipse. , Стоит отметить, что в этом конкретном проекте я включил библиотеки OpenGL и GLUT для тестирования; однако я также попытался создать полупустой проект и получил идентичные результаты.

Если вам нужна дополнительная информация, пожалуйста, говорите. Я не включил make-файл, потому что попытка изменить его приведет к перезаписи после другой сборки.

Ответы [ 2 ]

2 голосов
/ 04 августа 2015

Проблема связана с кодировками файлов.С помощью редактора (например, NP ++) проверьте типы кодировки файлов, измените на UTF-8 без спецификации.

Особенно проверяйте файлы * .mk, а не только исходные файлы.

2 голосов
/ 01 января 2012

Хорошо, несколько решил. По сути, мои файлы не были в исходной папке. Довольно смешно, что он не может быть собран вне исходной папки или выдает правильную ошибку / предупреждение.

...