why have error when compling code using boost lib

If I compile boost using code in SuperVector.cu, then the make fails with strange errors. The simplest example is :

#include <boost/lexical_cast.hpp>

int main()
return 0;

/usr/include/boost/lexical_cast.hpp(347): error: expected an expression

1 error detected in the compilation of “/tmp/tmpxft_000009b4_00000000-4_SuperVector.cpp1.ii” .

my system is ubuntu 10.04, nvcc 4.0, gcc 4.4.3