Pregunta

Estoy construyendo un producto multiplataforma y uno de los requisitos es a través de Windows (Win32, AMD64 y IA61). El producto como es CLI relativamente simple, pero tenemos un equipo de construcción separada que comprueba el código de CVS y construir en entornos de compilación separadas. Soy capaz de construir con éxito (utilizando Visual C ++ 2005) en una plataforma (máquina de AMD). Pero una vez que el proceso de registro del código, echa un vistazo a la generación falla.

La causa de la falla se debe a la acumulación de las rutas de bibliotecas incluir erróneamente se especifican en las hojas de propiedades. Específicamente la carpeta de archivo de salida bajo el Enlazador en las páginas de propiedades se especifican erróneamente. Así pues, estas bibliotecas se construyen en una carpeta diferente de donde los otros proyectos están esperando ellos.

Sin embargo, junto con la fuente verifico en los archivos .sln (y archivos más tarde .vcproj) también cada vez. Cabe agregar que si abro el archivo .sln en la carpeta donde la construcción no está teniendo éxito, no hay diferencia entre el uno en el que podía construir con éxito (pre registro de entrada). De hecho usando WinDiff no pude ver ninguna diferencia entre los dos construir carpetas (excepto algunos .ncb y CVS archivos de registro).

Así que cualquier idea de lo que está pasando? ¿Dónde VC ++ 2005 toma los directorios incluir toman la ruta de la carpeta de salida si no es de .sln? CVS está de alguna manera interfiriendo con el proceso? Cualquier otra cosa que pudiera probar.

Gracias de antemano.

¿Fue útil?

Solución

Sólo para actualizar el problema se resolvió. La causa fundamental es la .vcproj archivos no estaban recibiendo registró CVS !! Aquí es donde se almacenan los ajustes individuales del proyecto (que estaba bajo la impresión de que esto se hace en archivos .sln).

Otros consejos

Creo que el problema puede ser que después de haber cambiado la configuración en una configuración de construcción (por ejemplo, 86-Release), pero olvidado de cambiar para otra configuración (por ejemplo IA64-depuración), y cuando los cambios de configuración, que tienen este problema.

Otra cosa que me gustaría comprobar en su lugar es dependencias del proyecto. Si aquellos se encuentran en el camino correcto VS buscará producto del proyecto exactamente donde se le da salida, incluso si se cambia la carpeta de salida.

¿Usted tiene archivos binarios registramos, ya ASCII?

El ida y vuelta hacia y desde CVS puede corromper archivos binarios que están incorrectamente marcados como ASCII porque CVS lleva a cabo el proceso de caracteres en archivos ASCII (por ejemplo, para darle el final correcto de los códigos de línea para su sistema operativo). La corrupción puede ocurrir incluso en todo un entorno de Windows.

Vea la sección binario en el CVS FAQ para más información.

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