Определение препроцессора работает в Visual Studio и не работает в Qt-creator

.Про файл:

DEFINES += MY_HEADER=\"test.h\"

файл cpp:

#include MY_HEADER

В Qt-Creator компиляция завершилась с ошибкой:

ошибка C2006: «#include»: ожидается имя файла, найден «идентификатор»

Командная строка компилятора кажется правильной:

«C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ BIN \ nmake.exe» -f Makefile.Debug
cl -c -nologo -Zm200 -Zc: wchar_t- / E -Zi -MDd / E -GR -EHsc -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DMY_HEADER = «test.h» -DQLD = 3 -LLLL-3 -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I «C: \ Qt \ 4.7.4 \ включить \ QtCore» -I «C: \ Qt \ 4.7.4 \ включают» -I «C: \ Qt \ 4.7.4 \ include \ ActiveQt «-I» debug «-I» .. \ testdefine «-I». » -I «c: \ Qt \ 4.7.4 \ mkspecs \ win32-msvc2010» -Fodebug \ @C: \ Users \ Ekimov-A \ AppData \ Local \ Temp \ nm9C17.tmp

Когда проект импортируется в Visual studio с помощью Qt-addin, этот код компилируется без проблем.

1

Решение

Кажется, это ошибка qmake (функция?). Возможные обходные пути:

DEFINES += 'MY_HEADER=\\\"test.h\\\"'

или же

DEFINES += MY_HEADER=\\\"test.h\\\"
2

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

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

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