Tenemos un gran proyecto que usa VS2008 y aumenta 1_42. Estoy tratando de actualizar a VS2010 y aumentar 1_44. Instalé VS2010 e impulsé 1_44 y convertí el proyecto. Ahora estoy tratando de construir, y todo lo compila, pero falla al enlazar:¿Por qué VisualStudio busca este archivo lib? LNK1104 error
LINK : fatal error LNK1104: cannot open file 'libboost_thread-vc90-mt-1_42.lib'
me han cambiado el include y lib para apuntar a los nuevos archivos impulso 1_44 y he cambiado el nombre del directorio de impulso 1_42 edad .
¿Por qué el enlazador sigue buscando un archivo vc90-1_42, cuando solo está usando 1_44 encabezados? ¿Hay alguna manera de poder determinar POR QUÉ el enlazador quiere este archivo? El enlazador obviamente piensa que necesita el archivo, pero ¿por qué?
He limpiado el proyecto y estoy reconstruyendo para asegurar que se borren los archivos de compilación anteriores.
Bien, entonces descubrí cuál era mi problema, pero aún así me gustaría obtener una respuesta a "¿Cómo puedo averiguar por qué el enlazador quiere este archivo?". Mi proyecto dependía de uno de nuestros archivos lib que se creó con boost 1_42. Recompulsé el archivo lib con boost 1_44, y el error del enlazador en el proyecto principal desapareció. ¿Hay algún registro o utilidad que podría haber usado para ver que estaba sucediendo? – JPhi1618
Estoy bastante seguro de que no hay. Este tipo de información ("need to link to some_lib") probablemente esté enterrada en el interior de los archivos generados obj y lib. –