Проект Visual Studio всегда устарел, «обновление отсутствует @ ECHO», почему Visual Studio ищет этот ввод?

Фон:

Моя команда хочет Visual Studio для разработки на существующей базе кода, для ее различных инструментов, и это то, к чему привыкло большинство разработчиков. Однако существующая система сборки (внутренняя разновидность Jam) очень укоренилась и не может быть изменена по ряду факторов.

Идея:

  1. Создайте проект для каждого компонента. Я сделал это, используя сгенерированное Jam описание того, какие файлы помещаются в каждую библиотеку, и превращая это в файл проекта QT. Я вызываю qmake для этого, чтобы генерировать проекты Visual Studio с «qmake -tp vc».

  2. Отключить сборку Visual Studio. Я сделал это, изменив тип каждого исходного файла на «не участвует в сборке» (изменив каждый на)

  3. Добавьте событие перед сборкой, которое вызывает сборку Jam.

Проблема:

Теперь, когда я пытаюсь собрать из Visual Studio, это работает, в том, что он вызывает Jam.
Однако я ожидаю, что Visual Studio будет думать, что проект всегда актуален, учитывая, что он фактически не отслеживает какие-либо исходные файлы для компиляции. Но он всегда устарел и должен вызывать команду pre-build перед отладкой (которая присоединяет отладчик к исполняемому файлу и работает просто отлично).

Я использовал DebugView, чтобы увидеть, что происходит, и для многих моих проектов я получаю следующее в журнале

[12900] Project '<my project's name>' is not up to date because 1 build inputs were missing.
[12900] devenv.exe Information: 0 :
[12900]  up to date is missing: '<my project's location>\@ECHO'

Я искал высоко и низко, но не могу найти ссылку на @echo как на вход файла ни к чему. Кто-нибудь знает, и / или есть ли способ выяснить, почему он ищет это?

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]