"#" - это комментарий в make. Почти на 100% уверен, что CMake неправильно экранирует символ "#" при генерации make-файла.
Что касается того, почему вы видите эти номера строк ошибок, CMake генерирует большое количество make-файлов и вызывает их рекурсивно. Тот, который вы видите в «корне», скорее всего, просто make-файл верхнего уровня, который мало что делает. Вам придется искать в подкаталоге CMakeFiles другие make-файлы. Если вы запустите «make VERBOSE = 1» с файлами, сгенерированными CMake, вы сможете следить за вызываемыми подмодами. Кроме того, если вы посмотрите на сообщения «входящих в каталог», создайте отпечатки, вы сможете выяснить, о каком Makefile идет речь.
Однако краткий ответ заключается в том, что вы не сможете использовать специальные имена, такие как "#", "$", пробел, ":" и т. Д. В именах файлов.