quickbook documentation for boost-geometry

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

quickbook documentation for boost-geometry

Vishnu
I hope that building quickbook documentation can be made simpler. I'm getting errors while building the quickbook documentation for boost-geometry 0.9.0. I have copied to boost and libs folders from boost-geometry-0.9.0 into my boost_1_46_1 folder. The first problem is this:

When running 'make_qbk.py' in libs/geometry/doc, there's an error issued about 'doxygen_xml2qbk' not being found. A grep for this in the .py script shows that this is an executable that needs to exist in the installation but it doesn't exist. After investigating, I find that there's a folder with source code for doxygen_xml2qbk.cpp:

/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk

So I try to build this by running g++ and find that the header 'rapidxml.hpp' isn't found.

Next, I download the rapidxml-1.13 from sourceforge, copy the headers into the folder 'doxygen_xml2qbk' and try rebuilding 'doxygen_xml2qbk'.

Now, I get errors like this:

vish@laptop3:~/boost_1_46_1/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk$ g++ -I/home/vish/boost_1_46_1 -I/home/vish/boost_1_46_1/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk -o doxygen_xml2qbk doxygen_xml2qbk.cpp
/tmp/ccnVuNgh.o: In function `main':
doxygen_xml2qbk.cpp:(.text+0x5747): undefined reference to `boost::program_options::options_description::m_default_line_length'
doxygen_xml2qbk.cpp:(.text+0x5751): undefined reference to `boost::program_options::options_description::m_default_line_length'
doxygen_xml2qbk.cpp:(.text+0x579f): undefined reference to `boost::program_options::options_description::options_description(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, unsigned int)'
doxygen_xml2qbk.cpp:(.text+0x5857): undefined reference to `boost::program_options::options_description::add_options()'
doxygen_xml2qbk.cpp:(.text+0x5878): undefined reference to `boost::program_options::options_description_easy_init::operator()(char const*, char const*)'
doxygen_xml2qbk.cpp:(.text+0x5894): undefined reference to `boost::program_options::options_description_easy_init::operator()(char const*, boost::program_options::value_semantic const*, char const*)'
doxygen_xml2qbk.cpp:(.text+0x58b0): undefined reference to `boost::program_options::options_description_easy_init::operator()(char const*, boost::program_options::value_semantic const*, char const*)'
doxygen_xml2qbk.cpp:(.text+0x58d2): undefined reference to `boost::program_options::options_description_easy_init::operator()(char const*, boost::program_options::value_semantic const*, char const*)'
doxygen_xml2qbk.cpp:(.text+0x58f4): undefined reference to `boost::program_options::options_description_easy_init::operator()(char const*, boost::program_options::value_semantic const*, char const*)'
doxygen_xml2qbk.cpp:(.text+0x5916): undefined reference to `boost::program_options::options_description_easy_init::operator()(char const*, boost::program_options::value_semantic const*, char const*)'
/tmp/ccnVuNgh.o:doxygen_xml2qbk.cpp:(.text+0x5938): more undefined references to `boost::program_options::options_description_easy_init::operator()(char const*, boost::program_options::value_semantic const*, char const*)' follow
/tmp/ccnVuNgh.o: In function `main':
doxygen_xml2qbk.cpp:(.text+0x5946): undefined reference to `boost::program_options::variables_map::variables_map()'
doxygen_xml2qbk.cpp:(.text+0x59ce): undefined reference to `boost::program_options::basic_parsed_options<char> boost::program_options::parse_config_file<char>(std::basic_istream<char, std::char_traits<char> >&, boost::program_options::options_description const&, bool)'
doxygen_xml2qbk.cpp:(.text+0x59f1): undefined reference to `boost::program_options::store(boost::program_options::basic_parsed_options<char> const&, boost::program_options::variables_map&, bool)'
doxygen_xml2qbk.cpp:(.text+0x5a7d): undefined reference to `boost::program_options::store(boost::program_options::basic_parsed_options<char> const&, boost::program_options::variables_map&, bool)'
doxygen_xml2qbk.cpp:(.text+0x5aa7): undefined reference to `boost::program_options::notify(boost::program_options::variables_map&)'
doxygen_xml2qbk.cpp:(.text+0x5b65): undefined reference to `boost::program_options::operator<<(std::basic_ostream<char, std::char_traits<char> >&, boost::program_options::options_description const&)'
/tmp/ccnVuNgh.o: In function `boost::program_options::value_semantic_codecvt_helper<char>::value_semantic_codecvt_helper()':
doxygen_xml2qbk.cpp:(.text._ZN5boost15program_options29value_semantic_codecvt_helperIcEC2Ev[_ZN5boost15program_options29value_semantic_codecvt_helperIcEC5Ev]+0x16): undefined reference to `vtable for boost::program_options::value_semantic_codecvt_helper<char>'
/tmp/ccnVuNgh.o: In function `boost::program_options::value_semantic_codecvt_helper<char>::~value_semantic_codecvt_helper()':
doxygen_xml2qbk.cpp:(.text._ZN5boost15program_options29value_semantic_codecvt_helperIcED2Ev[_ZN5boost15program_options29value_semantic_codecvt_helperIcED5Ev]+0xb): undefined reference to `vtable for boost::program_options::value_semantic_codecvt_helper<char>'
/tmp/ccnVuNgh.o: In function `boost::program_options::variables_map::~variables_map()':
doxygen_xml2qbk.cpp:(.text._ZN5boost15program_options13variables_mapD2Ev[_ZN5boost15program_options13variables_mapD5Ev]+0xc): undefined reference to `vtable for boost::program_options::variables_map'
/tmp/ccnVuNgh.o: In function `boost::program_options::basic_command_line_parser<char>::basic_command_line_parser(int, char const* const*)':
doxygen_xml2qbk.cpp:(.text._ZN5boost15program_options25basic_command_line_parserIcEC2EiPKPKc[_ZN5boost15program_options25basic_command_line_parserIcEC5EiPKPKc]+0x6a): undefined reference to `boost::program_options::detail::cmdline::cmdline(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)'
/tmp/ccnVuNgh.o: In function `boost::program_options::basic_command_line_parser<char>::options(boost::program_options::options_description const&)':
doxygen_xml2qbk.cpp:(.text._ZN5boost15program_options25basic_command_line_parserIcE7optionsERKNS0_19options_descriptionE[boost::program_options::basic_command_line_parser<char>::options(boost::program_options::options_description const&)]+0x14): undefined reference to `boost::program_options::detail::cmdline::set_options_description(boost::program_options::options_description const&)'
/tmp/ccnVuNgh.o: In function `boost::program_options::basic_command_line_parser<char>::style(int)':
doxygen_xml2qbk.cpp:(.text._ZN5boost15program_options25basic_command_line_parserIcE5styleEi[boost::program_options::basic_command_line_parser<char>::style(int)]+0x14): undefined reference to `boost::program_options::detail::cmdline::style(int)'
/tmp/ccnVuNgh.o: In function `boost::program_options::basic_command_line_parser<char>::extra_parser(boost::function1<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>)':
doxygen_xml2qbk.cpp:(.text._ZN5boost15program_options25basic_command_line_parserIcE12extra_parserENS_9function1ISt4pairISsSsERKSsEE[boost::program_options::basic_command_line_parser<char>::extra_parser(boost::function1<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>)]+0x27): undefined reference to `boost::program_options::detail::cmdline::set_additional_parser(boost::function1<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>)'
/tmp/ccnVuNgh.o: In function `boost::program_options::basic_command_line_parser<char>::run()':
doxygen_xml2qbk.cpp:(.text._ZN5boost15program_options25basic_command_line_parserIcE3runEv[boost::program_options::basic_command_line_parser<char>::run()]+0x2d): undefined reference to `boost::program_options::detail::cmdline::run()'
/tmp/ccnVuNgh.o: In function `std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > boost::program_options::to_internal<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)':
doxygen_xml2qbk.cpp:(.text._ZN5boost15program_options11to_internalISsEESt6vectorISsSaISsEERKS2_IT_SaIS5_EE[std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > boost::program_options::to_internal<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)]+0x3b): undefined reference to `boost::program_options::to_internal(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/ccnVuNgh.o:(.rodata._ZTVN5boost15program_options11typed_valueISscEE[vtable for boost::program_options::typed_value<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>]+0x1c): undefined reference to `boost::program_options::value_semantic_codecvt_helper<char>::parse(boost::any&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool) const'
/tmp/ccnVuNgh.o:(.rodata._ZTIN5boost15program_options11typed_valueISscEE[typeinfo for boost::program_options::typed_value<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>]+0x10): undefined reference to `typeinfo for boost::program_options::value_semantic_codecvt_helper<char>'
/tmp/ccnVuNgh.o: In function `boost::program_options::typed_value<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>::name() const':
doxygen_xml2qbk.cpp:(.text._ZNK5boost15program_options11typed_valueISscE4nameEv[boost::program_options::typed_value<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>::name() const]+0x1a3): undefined reference to `boost::program_options::arg'
doxygen_xml2qbk.cpp:(.text._ZNK5boost15program_options11typed_valueISscE4nameEv[boost::program_options::typed_value<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>::name() const]+0x206): undefined reference to `boost::program_options::arg'
/tmp/ccnVuNgh.o: In function `boost::program_options::typed_value<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>::xparse(boost::any&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) const':
doxygen_xml2qbk.cpp:(.text._ZNK5boost15program_options11typed_valueISscE6xparseERNS_3anyERKSt6vectorISsSaISsEE[boost::program_options::typed_value<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>::xparse(boost::any&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) const]+0x8c): undefined reference to `boost::program_options::validate(boost::any&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >*, int)'
collect2: ld returned 1 exit status
vish@laptop3:~/boost_1_46_1/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk$

Why can't all executables required to build documentation be put into the distribution?
Reply | Threaded
Open this post in threaded view
|

Re: quickbook documentation for boost-geometry

Vishnu
>>So I try to build this by running g++ and find that the header 'rapidxml.hpp' isn't found.
>>Next, I download the rapidxml-1.13 from sourceforge, copy the headers into the folder 'doxygen_xml2qbk' and try rebuilding 'doxygen_xml2qbk'.

It turns out that 'rapidxml.hpp' does exist in the boost-geometry-0.9 distribution. However,  the linker error while building the program 'doxygen_xml2qbk' remains.
Reply | Threaded
Open this post in threaded view
|

Re: quickbook documentation for boost-geometry

Barend
Hi Vishnuu,

On 9-5-2011 5:38, Vishnu wrote:
>>> So I try to build this by running g++ and find that the header
> 'rapidxml.hpp' isn't found.
>>> Next, I download the rapidxml-1.13 from sourceforge, copy the headers into
> the folder 'doxygen_xml2qbk' and try rebuilding 'doxygen_xml2qbk'.
>
> It turns out that 'rapidxml.hpp' does exist in the boost-geometry-0.9
> distribution. However,  the linker error while building the program
> 'doxygen_xml2qbk' remains.

Right. You take the right steps. However, the program must be linked to
Boost.Options, which is a non-header-only library.

The provided jamfile does that for you, and otherwise you have to do it
yourself. If using Visual Studio, there is a solution doing this.

We don't distribute the executables because... they are OS-dependant, so
I can provide one for Windows (which needs updates regularly) but not
for all imaginable Linux distributions.

Regards, Barend


_______________________________________________
ggl mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/ggl