2010-06-07 24 views
5

Me gustaría ver si me puede orientar.Boost en Visual Studio 2010, error de IntelliSense

Sucede que he realizado y se hace referencia a impulsar las bibliotecas con el fin de utilizarlos con Visual Studio 2010. Cuando la construcción de mi proyecto de prueba consigo estas dos errores de IntelliSense

1 IntelliSense: #error directive: "Macro BOOST_LIB_NAME not set (internal error)" c:\boost_1_43_0\boost\config\auto_link.hpp 

2 IntelliSense: #error directive: "some required macros where not defined (internal logic error)." c:\boost_1_43_0\boost\config\auto_link.hpp 

Comprobando archivo de la cabecera de la auto_link.hpp primer error es en esta línea

#ifndef BOOST_LIB_NAME 
# error "Macro BOOST_LIB_NAME not set (internal error)" 
#endif 

Determinación de la definición de BOOST_LIB_NAME, parece que se define en config.hpp por boost_regex, cuyo código incluyo a continuación

#if !defined(BOOST_REGEX_NO_LIB) && !defined(BOOST_REGEX_SOURCE) && !defined(BOOST_ALL_NO_LIB) && defined(__cplusplus) 
# define BOOST_LIB_NAME boost_regex 
# if defined(BOOST_REGEX_DYN_LINK) || defined(BOOST_ALL_DYN_LINK) 
#  define BOOST_DYN_LINK 
... more code 

y extrañamente cuando señalo a BOOST_LIB_NAME define BOOST_LIB_NAME y los errores de IntelliSense desaparecer.

Mi programa crea y ejecuta correctamente utilizando la biblioteca Boost: Regex, con o sin los errores de Intellisense; sin embargo, no entiendo por qué aparecen estos errores IntelliSense en primer lugar, y segundo por qué señalar la macro en config.hpp define BOOST_LIB_NAME.

Cualquier orientación será muy apreciada.

Gracias,

Jaime

Respuesta

5

comprobar el error de Visual Studio IntelliSense para C++ no es perfecto y, a menudo informa de errores que aren'treallyerrors (los enlaces a tres falsos positivos que he encontrado y reportado; sin embargo, no están relacionados con su problema).

Cuestiones relacionadas