Компилятор Visual Studio и рекурсивный Make

У меня действительно страшное сообщение об ошибке при использовании компилятора visual studio с рекурсивным make.

Это моя установка:

Makefile верхнего уровня:

.PHONY: test

test:
    $(MAKE) -C subdir

Makefile в subdir:

.PHONY: all

all:
    cl.exe /nologo /c src/interface.cpp

Компиляция удалась, но я всегда получаю это предупреждение:

нераспознанный исходный тип файла 'cl', предполагается, что объектный файл

Это предупреждение появляется только тогда, когда я вызываю make, используя Makfile верхнего уровня. Если я изменяю директорию на subdir и запускаю make, ошибка не появляется.

Известно, что cl.exe запускается с помощью vcvarsall.bat перед запуском make.

Я действительно надеюсь, что вы можете мне помочь.

Заранее спасибо.

1 ответ

Проблема была в том, что у меня была переменная, содержащая имя файла компилятора, и я экспортировал эту переменную из Make. Так что команда была cl.exe cl.exe... Спасибо!

Другие вопросы по тегам