Installing a compiler by default

Peter Garrett peter.garrett at optusnet.com.au
Fri Jun 9 07:53:12 BST 2006


On Thu, 8 Jun 2006 19:26:27 -0700
"Corey Burger" <corey.burger at gmail.com> wrote:
[snip]
> 
> I don't think shipping GCC truly makes sense. Lets look at the use cases:
> 
> 1. Person compiling something to get them on the internet
> Ignore the fact that I have not seen a solid case where you can get
> the source without being on net already, nor a solid case where this
> is even necessary (I am sure there are, I just haven't looked at
> deeply), how many users are actually technically adept enough to do
> this?

I don't think making the assumption that users are stupid is very
sensible. If the user googles and finds that source code, headers and
compilers are needed to achieve an aim, then surely that user has enough
brains to download the sources required on another machine.
> 
> 2. Person wanting to compile some random stuff
> If you know what compiling is, you should probably already also know
> what to look for. 

The package is called "build-essential" - many people coming from
different distros expect to simply install "gcc" . This comes up *all the
time* on IRC. Without "make" and friends the whole thing falls in a heap. 
The result is constant questions about why the compiler "Doesn't Work (tm)"

> The documentation team will fix the fact that our
> help says nothing about gcc or compiling for edgy. If I google "gcc
> ubuntu", the first hit I get is how to install build-essential.  Same
> with "compiling ubuntu".

Yes, but if the user googles for a particular case ( kernel modules /
drivers for example), this isn't so clear. Once the driver/module/ source
is located, the most likely scenario is that the user will be following a
"howto" that says to use commands like ./configure && make - guess what
happens?  

make: command not found

Intelligent user installs make:

"Compiler cannot create executables"  

and so on...

> 
> Problems mentioned by mdz
> 
> 1. Linux systems ship with gcc
> Fedora ships on 5 cds. Mandriva ships with a mis-mash of GNOME and
> KDE.

Including GNOME and KDE in the CD set is a "mish mash" ? Please... we
aren't here to insult other distros.

> This is Ubuntu. We make choices because they have solid usecases,
> not because other people do it. (We should, of course, look at why
> they are doing it)

I'm surprised that you don't see how often this comes up in support
situations. One of the first aliases most IRC helpers set up is one for
something like "Install build-essential" .
> 
> 2. A great deal of distribution-agnostic documentation assumes the
> availability of gcc
> When it fails, people are going to one of two things: Give up or look
> for help. If they do the former, there is not much we can do and the
> latter is mostly already there (just the system help needs to be
> fixed)

If you go this way then I suggest that the command "make" should be
aliased by default to ' echo  "Please install the build-essential package
to enable compiling on your system. It is on the CD"'

But why go to the trouble of doing that or something like it, when you
could easily *just install the tools by default*.... !
> 
> 3. Users who are new to Ubuntu have no idea how to install the
> necessary  packages for building a kernel module
> 
> By the same argument, users who are new to Ubuntu are quite likely to
> have no idea how to compile either.

And we prefer to keep them in ignorance, of course ... *sigh*
> 
> Conclusion:
> I just don't see a compelling case where build essential is needed.

Conclusion: I just don't see a compelling case as to why it should be
excluded. 

If, as you claim, the majority will neither need nor understand
it, nothing is lost. They just will not find the compiler. If on the other
hand they find that they *do* need it, it becomes just one more
repetitive FAQ to churn out over and over....

Peter
-- 


"Hyperlinks subvert hierarchy."

-The Cluetrain Manifesto



More information about the sounder mailing list