Qt advertencia del compilador: anulando comandos para la meta / ignorar comandos de edad para la meta

StackOverflow https://stackoverflow.com/questions/4722400

  •  12-10-2019
  •  | 
  •  

Pregunta

Cuando estoy compilar mi proyecto Qt para Windows recibo estas advertencias 2:

Makefile.Debug:109: warning: overriding commands for target `debug/moc_mainwindow.cpp'
Makefile.Debug:106: warning: ignoring old commands for target `debug/moc_mainwindow.cpp'

Yo supongo que se indican algún problema con mi proyecto de configuración, ¿cuál es el problema y cómo puedo solucionarlo?

¿Fue útil?

Solución

Tengo el mismo error una vez, tal vez origen del problema es diferente, pero voy a escribir de todos modos. En mi archivo * .pro, era como:

SOURCES += main.cpp\
    mainwindow.cpp\
    serialHelper.cpp \
serialHelper.cpp

HEADERS  += mainwindow.h\
     += serialHelper.h \
serialHelper.h \
typeDefinitions.h

CPP y archivo de cabecera se repetía. Elimino la repetición incluye y problema resuelto para mí.

Otros consejos

make clean y make entonces deberían resolver este problema. :). (O clic derecho en el proyecto en Qt Creator -> Limpiar y luego haga clic derecho en proyecto en Qt Creator -> Reconstruir)

Si no funciona, elimine manualmente el archivo MAKE y la reconstrucción después del proyecto.

En muchos casos este error está relacionado con QMake sólo poner todos los archivos de objetos en una carpeta normal en el directorio de construcción, que a su vez causa problemas si dos archivos de origen tienen el mismo nombre, a pesar de que podrían estar en diferentes carpetas . Tal como

SOURCES += foo.cpp
SOURCES += bar.cpp
SOURCES += bla/foo.cpp
SOURCES += bla/bar.cpp

En este caso QMake se queja de tanto foo.o y bar.o.

La solución a este problema es añadir

CONFIG += object_parallel_to_source

para el archivo .pro que hará que la carpeta de compilación para reflejar la jerarquía de carpetas del árbol de fuentes. No estoy seguro de por qué esto no es el predeterminado.

El problema y la solución se han señalado anteriormente aquí pero no en el contexto del mensaje de advertencia discutido en este hilo .

He tenido el mismo problema, así - Makefile incluido el mismo .cpp y .h archivo dos veces, y me estaba dando Multiple definition of <class/function> first defined here errores.

Resulta que los archivos .cpp y .h en cuestión ya se añadieron como qwtfunctions, además de ser en el archivo * .pro. A fin de comprobar qwtfunctions así si ninguna de las respuestas anteriores trabajó para usted.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top