-----Original Message----- From: Boost [mailto:boost-bounces@lists.boost.org] 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 [1]. 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 windows,
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.
+1 Paul