Весь день я изо всех сил пытался отследить проблему с Qt VS Tools в Visual Studio 2013. Я пытаюсь обновить существующий файл .vcxproj, который использует собственный механизм для генерации MOC, UIC и т. Д. вместо файлов. использовать механизм Qt VS Tools.
Проблема, с которой я столкнулся, заключается в команде MOC, которая генерируется для файлов .h, которые содержат макрос Q_OBJECT. Пример строки (сокращённо для краткости) здесь:
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-I$(QTDIR)\include\QtGui" "-I$(NOINHERIT)"</Command>
Проблема в том, что NOINHERIT не существует, поэтому "-I $ (NOINHERIT)" оценивается как "-I" без значения, а компилятор MOC жалуется и не генерирует файл MOC. Я пытался очистить унаследованные пути, проверяя и снимая флажок «Наследовать от родительских или проектных значений по умолчанию», и единственное изменение, которое я иногда вижу, состоит в том, что у него есть «-I» без макроса NOINHERIT.
Полное начало с новым файлом .vcxproj начинает казаться моей единственной надеждой, но это гораздо более сложная задача, чем я хотел бы выполнить, поскольку существует значительное число из них с взаимозависимостями, которые я бы не хотел создавать еще раз.
Я использую последнюю версию Qt VS Tools, которая является версией 2.3.2. Любые идеи о том, как решить эту проблему?