Hi!

One possible solution would be to use pImpl idiom and use boost in cpp files via the forward declartion. This might work in conjunction by splitting one big project in producing multiple libs or shared objects (dlls) and link against binaries with slim headers.

Greetings,
Ovanes



On Sun, Apr 26, 2009 at 10:40 PM, Robert Dailey <rcdailey@gmail.com> wrote:
Hey guys,

One of the requirements for a continuous integration process is that the build for a specific target be quick. Something under 10 minutes is ideal. I find that when not using precompiled headers, boost can significantly impact the compilation time of the project. I've experienced 20 minute compiles when using boost fairly extensively throughout the code base.

So far I only see two obvious solutions to this problem. First, use precompiled headers. I really don't want to do this because it causes issues with include dependencies and makes the code not reusable as a result. The second option is to beef up the machines doing the compiles, however this can have diminishing returns.

I am sure that a lot of people in the community have had this specific issue with Boost's compile times, as well as in many other areas. What would you guys recommend? Is there any other solution beyond the obvious?

Thanks for your time.