Subject: Re: [boost] Let's stop distributing binaries
From: Paul A. Bristow (pbristow_at_[hidden])
Date: 2018-08-30 08:48:28
> -----Original Message-----
> From: Boost [mailto:boost-bounces_at_[hidden]] On Behalf Of Tom Kent via Boost
> Sent: 30 August 2018 03:41
> To: Boost Developers List
> Cc: Tom Kent
> Subject: Re: [boost] Let's stop distributing binaries
> TL;DR - We need to provide an easier way to get windows/visual studio users
> up and running with boost than building with b2. I love boost and want to
> make it as easy as possible for others to use.
> History of the binaries
> When I first got started with the boost project about a decade ago, I was a
> decent C++ developer at a large company (Boeing). We use C++ to develop
> simulators for our aircraft.
> I had worked extensively with Visual Studio and our large code base. Our
> primary product (our simulation) is hundreds of thousands of lines of code
> and uses dozes of external dependencies. Most of the "external"
> dependencies were internally (other groups within the company) produced
> products. We would get dumps of .h and .lib files from other groups and add
> the directories to our visual studio solution include/lib paths. We would
> occasionally encounter ABI errors, but were very good at managing the
> configuration of libraries coming in to keep these from affecting us. We
> basically had a system similar to Conan...but fifteen years ago.
> I got the task of adding Boost to one of our projects in our solution, so
> we could use a couple very nice libraies: asio, date time, interprocess,
> program options, thread, and test. Several of these are not header only, so
> I knew I needed static libs for them. I fought for weeks trying to get
> binaries. I wasn't familiar with bjam (and didn't know it was included with
> the source!) so I tried to load the source into visual studio and compile
> it....that didn't go well. Eventually I found the horrible "Getting started
> with windows" page . It tries to lead a user to the command `b2
> --toolset=msvc-14.0 --build-type=complete stage`, but fails miserably to
> identify the arguments that are actually needed and most users would never
> figure out from the page that that is the command they need.
When I first started with Boost, so long ago I have forgotten exactly when, this was also my experience and I complained repeatedly
and loudly at the time but the response was zilch .
The 'Getting started' instructions seem nice, but they assume a vast amount of knowledge that many users do not know and *should not
need to know*.
> After many *dozen* hours fighting with b2, digging through terrible b2
> documentation, and googling for people who had successfully built boost on
I remember similar years of fun!
> I finally got my static libs out! It was a nightmare that still
> motivates the work that I do to make binaries available.
> I have great respect for where this request comes from. I wish every
> developer (especially the ten years ago me) could easily understand how to
> build their own copy of boost. However, I think we as a community need to
> spend a lot more time thinking about the end-users who want to use boost
> but aren't already familiar with it.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk