Boost logo

Boost :

From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2000-12-20 11:19:17


On Tue, 19 Dec 2000, Daryle Walker wrote:

> > In my view, there is *no* install system which can adequately handle all
> > possible variations of what people could do in terms of include directories,
> > [snipped]
> > at all. I have, in the past, rejected software precisely *because* it comes
> > as an installer package, and doesn't offer a "do it by hand" option.
>
> I wanted to respond to this branch of the thread, but didn't know how.
> But Paul's response is close to some of the stuff I thought of to help
> me respond.
>
> Yes, the installation procedure for Boost is so simple that any
> automated install procedure is overkill. And any possible exceptions
> would be so unusual that we shouldn't bother trying to anticipate
> them. As long as we can clearly describe where the files are, we
> should assume that the user is competent enough to use their compiler
> system with third-party APIs. (A current problem is that the policy
> on mandatory *.cpp files isn't clear.)

I disagree.

See http://www.egroups.com/message/boost/7532. Installation --
particularly on an enterprise-wide level -- is *not* an obvious task.
Granted, boost doesn't have complex installation requirements, but they
are nontrivial.

For example, look at the complexity of the standard unix "install-sh"
script from GNU. There are at least several pitfalls in trying to install
software for multiple users. Here's a few (particularly in the unix
environment, but relevant elsewhere also):

- setting permissions/owner correctly for everyone to be able to access
  the installed stuff (this is a big one)
- only copy relevant files (recursive copies == bad)
- only modifying the files and directories that were just installed, not
  everything in the installed tree (again, recusive == bad)
- providing a clean uninstall process
- running ranlib or otherwise "installing" libraries in their desintation
- indicate "success" or "failure" at the end (typically due to permissions
  issues)

I claim that simplicty for the user should be right near the top of the
list of things that boost needs. And an install process provides this
(and a build process is important, too -- already elaborated by William
Kempf).

If you want to manually copy because you don't trust installers, you will
be able to. But I think that 99.9% of boost users will use some kind of
"make install" process because they don't know/care how it works, and will
trust it to do the Right Things.

{+} Jeff Squyres
{+} squyres_at_[hidden]
{+} Perpetual Obsessive Notre Dame Student Craving Utter Madness
{+} "I came to ND for 4 years and ended up staying for a decade"


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk