C1854 de error: no puede sobrescribir la información formada durante la creación de la cabecera precompilado en el archivo de objeto

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

Pregunta

foo.cpp(33918) : fatal error C1854: cannot overwrite information formed 
during creation of the precompiled header in object file: 'c:\somepath\foo.obj'

Consulting de MSDN sobre esto me da la siguiente información:

  

Se ha especificado el / Yu (uso precompiled   cabecera opción) después de especificar el   opción / Yc (crear encabezado precompilado)   para el mismo archivo. Cierto   declaraciones (como declaraciones   incluyendo dllexport declspec) hacen   esto no es válido.

Estamos utilizando dllexport y encabezados precompilados en este caso. Tiene a nadie encontró esto antes y sabe de alguna solución? Cualquier entrada de arrojar alguna luz sobre este problema es muy apreciada.

Gracias

¿Fue útil?

Solución

Creo que se puede encontrar la respuesta aquí: http://social.msdn.microsoft.com/forums/en-US/vclanguage/thread/b3aa10fa-141b-4a03-934c-7e463f92b2a5/

Básicamente, es necesario configurar el archivo stdafx.cpp a "Crear encabezados precompilados" y todos los demás archivos .cpp a "Use encabezados precompilados"

Otros consejos

he tenido este problema también.

Asegúrese de que el archivo de salida de cabecera precompilador se establece en la ubicación correcta. El mío fue enviada realmente a la ubicación correcta, pero había problemas de lectura que sólo porque el camino tenía un pequeño artefacto en el interior.

Mi solución fue volver a revisar cuidadosamente todos los ajustes de la cabecera precompilados no sólo en el proyecto .exe, pero todos los proyectos DLL también y volver a crear todas las cabeceras. Después de que el error se había ido en la compilación .exe.

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