SVN version: 1963
Hi guys,
The default version of Boost that Ubuntu 9.04 installs (that is, the one
you get if you install the package "libboost-dev") is 1.34.1-15ubuntu3.
Cvpcb makes use of BOOST_REVERSE_FOREACH on line 388 of
/kicad/cvpcb/cvframe.cpp, which appears to be a construct that was only
introduced in Boost 1.36.
There is nothing on the "Building Kicad" page or in COMPILING.txt about
the Boost version requirement. COMPILING-Debian.txt just mentions the
libboost-dev dependency.
I can see two possible solutions for this:
1. Fix the code so that it doesn't use BOOST_REVERSE_FOREACH
2. Document the fact that Kicad (or at least Cvpcb) won't build when
the version of Boost is less than 1.36, and maybe add something to make
Cmake check the Boost version when generating the Makefiles, and fail
if Boost is too old.
Unless of course anyone has any other ideas?
It seems BOOST_REVERSE_FOREACH is only used in that one place, although
there are instances of BOOST_FOREACH being used in other parts of the
Kicad codebase. In the interests of keeping the code easy to understand,
I'd be very tempted just to update COMPILING.txt and
COMPILING-Debian.txt, and maybe add the version-check...
Thanks,