Pregunta

Actualmente estoy escribiendo una aplicación CUDA y quiero usar el Boost :: Program_options Biblioteca para obtener los parámetros requeridos y la entrada del usuario.

El problema que estoy teniendo es que NVCC no puede manejar la compilación del archivo Boost any.hpp Dar errores como

1>C:\boost_1_47_0\boost/any.hpp(68): error C3857: 'boost::any': multiple template parameter lists are not allowed

Busqué en línea y descubrí que es porque NVCC No se puede manejar las ciertas construcciones utilizadas en el código de impulso Pero ese NVCC debe delegar la compilación del código de host al compilador C ++. En mi caso estoy usando Visual Studio 2010, por lo que el código de host debe pasar a cl.

Dado que NVCC parecía estar confundido, incluso escribí un envoltorio simple alrededor de las cosas de impulso y lo metí en un separado .cpp (en vez de .cu) archivo pero sigo recibiendo errores de compilación. Extrañamente el error se arroja al compilar mi main.cu en vez de wrapper.cpp pero aún es causado por impulso main.cu no incluye ningún impulso código.

¿Alguien sabe de una solución o incluso una solución para este problema?

No hay solución correcta

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