wiki:BoostDocs/GettingStarted

Version 22 (modified by Daniel James, 14 years ago) ( diff )

Make it clearer that some packages aren't required.

I'm going to try to write a better getting started guide for the boost documentation tools, outside of the individual tools' documentation. Just a very rough outline to start with. This will be of only limited scope - full documentation will be in the tools' documentation.

How to build boost documentation

Required packages (see below for platform specific instructions).

TODO

Windows

It might be easier to use Cygwin (see below).

First, you need to get the boost build tools set up, see the getting started guide for an introduction.

  • Create directory for boost tools, say c:\boost-tools.
  • Create directory for binaries, say c:\boost-tools\bin.
  • Add to path.
  • xml tools from Igor Zlatkovic. Require: iconv, libxml2 and libxslt, zlib. (Don't use version 2.6.32+ of libxml2, there's a bug which breaks doxygen import, 2.6.30 works).

Make directory for xml files, say c:\boost-tools\xml.

user-config.jam in the boost build search path, for most people this will be C:\Documents and Settings\username.

using xsltproc
    : "C:/boost-tools/bin/xsltproc.exe"
    ;

using boostbook
    : "C:/boost-tools/xml/docbook-xsl"
    : "C:/boost-tools/xml/docbook-xml"
    ;

If you want to build the complete documentation, you'll also need to install:

  • Doxygen
  • MikTeX - select the version under 'Download' in the left column, the basic installer should be fine.
  • Ghostscript - click on the latest version of 'GPL Ghostscript', there should be a link for the latest self extracting download near the bottom.

The bin directories of these tools needs to be added to the path. I think Doxygen and MikTex's installers do this for you, but ghostscript's doesn't.

user-config.jam:

using xsltproc
    : "C:/Users/example/Documents/boost/xml/bin/xsltproc.exe"
    ;

using boostbook
    : "C:/Users/example/Documents/boost/xml/docbook-xsl"
    : "C:/Users/example/Documents/boost/xml/docbook-xml"
    ;

using doxygen ;
using quickbook ;

Cygwin

First, you need to get the boost build tools set up. bjam will need to be built using cygwin, so don't use the prebuilt windows binary.

Cygwin packages:

  • Libs/libxml2
  • Libs/libxslt
  • Text/docbook-xml42
  • Text/docbook-xsl
  • Devel/doxygen (optional, used for several libraries)
  • Text/tetex-extra (optional, used for the accumulators library documentation)
  • Graphics/ghostscript (optional, also used for the accumulators library documentation)

Build bjam

user-config.jam:

using xsltproc ;

using boostbook
    : /usr/share/docbook-xsl
    : /usr/share/xml/docbook/4.2
    ;

using doxygen ;
using quickbook ;

Unix with automatic script

TODO

OS X

I'm not sure about any of this...

  • Doxygen has an OS X download.
  • xsltproc is included with OS X, but might be a little old, binaries are available.
  • Need to install docbook manually.
  • MacTex

(Alternatively use macports or fink?)

Debian/ubuntu

First, you need to get the boost build tools set up, see the getting started guide for an introduction. You can probably use the bjam package.

# TODO: What's the correct latex package?
sudo apt-get install xsltproc docbook-xsl docbook-xml

# Optional extras:
sudo apt-get install doxygen texlive-full

Add to user-config.jam:

using xsltproc ;

using boostbook
    : /usr/share/xml/docbook/stylesheet/nwalsh
    : /usr/share/xml/docbook/schema/dtd/4.2
    ;

using quickbook ;

# Remove this line if you haven't installed doxygen
using doxygen ;

Pre-build quickbook

TODO

How to build pdfs

TODO

DocUtils

Some of the documentation uses python docutils, but I don't think it should be included with the main getting started documentation, as that is complicated enough. Unfortunately the docutils toolset doesn't support the debian or macports package layout, and I suspect many other package management tools. So I'll probably try to change it to support them to make life easier.

Attachments (1)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.