программа NMAKE.exe продолжает жаловаться на флаги, которые я не даю. (U1065)

когда я запускаю nmake.exe С make Я получаю эту ошибку:

Microsoft (R) Program Maintenance Utility Version 8.00.50727.42
Copyright (C) Microsoft Corporation.  All rights reserved.

NMAKE : fatal error U1065: invalid option '-'

но я не передаю '-' как вариант в любом месте.

Если я запускаю ту же команду извне, она работает правильно.

3 ответов


проблема в том, что переменные среды MAKE и MAKEFLAGS устанавливаются make. Эти путаете nmake.exe.

чтобы исправить это, просто префикс вызова nmake.exe С env -u MAKE -u MAKEFLAGS

пример:

 some-make-target:
      env -u MAKE -u MAKEFLAGS nmake.exe /a /l

Если вы используете windows, просто перейдите к переменным среды заранее настройки системы и удалить системные переменные "MAKEFLAGS". Это больше не должно смущать Nmake.


Предположим, вы находитесь в командной строке windows, и у вас есть такое правило:

 target:
   cd ... && nmake.exe ...

by

 target:
   cd ... && set MAKEFLAGS= && nmake.exe ...

set FOO: отображение значения FOO, если оно существует (например,echo %FOO%)

set FOO=: unset FOO, (т. е. Позже вызовите set FOO будет отображать Environment variable FOO not defined)

Примечание: нет unset команда