On Sun, Nov 2, 2008 at 9:32 PM, Z. S. O.
wrote: Sure! The console output is below. The files in question are utf8_codecvt_facet.cpp, which is in libs/detail, and its header file, which is in boost/detail. [snip] Building file: ../src/boost/libs/detail/utf8_codecvt_facet.cpp Invoking: GCC C++ Compiler g++ -I/Volumes/Admin/Projects/TestProgram/src/stlsoft-1.9.60/inclu de -I/Volumes/Admin/Projects/TestProgram/src/boost -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/boost/libs/detail/utf8_codecvt_facet.d" -MT"src/boost/libs/detail/utf8_codecvt_facet.d" -o"src/boost/libs/detail/utf8_codecvt_facet.o" "../src/boost/libs/detail/utf8_codecvt_facet.cpp"
/Volumes/Admin/Projects/TestProgram/src/boost/boost/detail/utf 8_codecvt_facet.hpp:113: error: expected constructor, destructor, or type conversion before 'struct' /usr/include/assert.h:75: error: expected constructor, destructor, or type conversion before 'extern' ../src/boost/libs/detail/utf8_codecvt_facet.cpp:28: error: 'BOOST_UTF8_BEGIN_NAMESPACE' does not name a type
[snip] Are you sure that you need to compile libs/detail/utf8_codecvt_facet.cpp? boost/detail/utf8_codecvt_facet.hpp has this comment: // Until the above points are fixed, a library which wants to use utf8 must: // - include this header from one of it's headers or sources // - include the corresponding .cpp file from one of the sources // - before including either file, the library must define // - BOOST_UTF8_BEGIN_NAMESPACE to the namespace declaration that must be used // - BOOST_UTF8_END_NAMESPACE to the code to close the previous namespace // - declaration. // - BOOST_UTF8_DECL -- to the code which must be used for all 'exportable' // symbols. from which it seems that the corresponding .cpp is not designed to be built directly, but via inclusion from another Boost lib. Éric Malenfant --------------------------------------------- The easier it is to do, the harder it is to change.