This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: libstdc++ included?.


> I spent three days (in excess of 10 hours a day)  working my way through
> setting up my C++ development environment on Linux. ( and it's still not
> quite the way I would like or expect it to be )

I won't comment on how you spent your time, and how you could have
reduced that. Instead, I'll just try to correct the misunderstandings
that you still may have.

> Eventually I grok that gcc is  in fact the C++ compiler.  It just so happens
> that it is also able to compile other languages as well. Rather than staying
> with the idea that one builds small utilities to do specific tasks, we now
> have a compiler which is also a linker, and compiles and links many
> languages.

While gcc is indeed a compiler for many languages, it is not a
linker. Instead, it invokes the linker. Technically, each piece of the
compiler supports a single language, only, so there is a single tool
for compiling C, one for C++, etc. It just happens that gcc invokes
the appropriate compiler (and assembler and linker), instead of
requiring the user to do so. It also happens that the C++ compiler
itself is not a "small utility", either.

> Where on this page is it made clear what exactly is required to compile C++
> code.

That's a question, right? As a matter of fact, so far nobody reported
a problem with understanding that page. However, if you had looked at

http://www.gnu.org/software/gcc/install/download.html

(directly reachable from gcc.gnu.org, at "Downloading"), it is right
there:

# If you choose to download specific components, you must download the
# core gcc distribution plus any language specific distributions you
# wish to use.

> Jeez, 8.7 Meg zipped up, I thought Microsoft were the masters of
> bloat, their compiler and linker ( not all the gui, and other stuff,
> just the compiler and linker ) weighs in at less than 4 meg,
> unzipped.

You may have noticed that you got the source code of the compiler. I
won't guess what size the source code of Visual C++ has; the binary
C++ compiler, on my system, has 2.7MB; assembler and linker add
another 1MB.

> Or, Am I again not understanding something, maybe I will read every readme
> file regardless of it's location, hoping to find a snippet of addition
> information.

Had you read the download instructions, you had noticed

# Each language has a tarball which includes the language front-end as
# well as the language runtime (when appropriate).

> Why are Cygnus the source for the standard c++ library, Cygnus is run by
> Redhat, why isn't GNU (The Free Software Foundation) doing this ?!?!?

The Free Software Foundation is not developing any software by itself;
instead, it is the contributors that actually write the stuff. Since
this library is not completed at all, it is not being distributed by
the FSF. That will change in gcc 3.

> but when I follow the link to here: http://www.gnu.org/software/gdb/gdb.html
> , I can't find anything to download.

In case you still did not find it, perhaps the link 

http://www.gnu.org/software/software.html#HowToGetSoftware

had helped, which leads you to an ftp server near you. Since you found
that the debugger is called "gdb", it would have been easy to locate
its source on any of the FTP mirrors.

> Oh, that's because it comes with the 'Core compiler distribution' .

No, the debugger does not come with the compiler. GCC is a compiler,
not a debugger.

> GNU uses 'Core compiler' to mean this: 
> 'various GNU compilers, assemblers, linkers, debuggers, etc., plus their
> support routines, definitions, and documentation.'

No, we don't. We use "Core compiler" to mean: "compiler infrastructure
for optimization and generation of assembler code for various targets,
including support for only the C language".

> It seems that there is a small group of people, in control of such issues,
> who feel that since they had to spend a significant portion of their lives
> figuring all these things out, that everyone else ought to have to do the
> same.

Your impression is incorrect. While there is a small group of people
actually contributing to the compiler, this group has never rejected
contributions to documentation, to my knowledge.

> I am a proponent of sharing information, not hiding it, and so don't
> quite understand why this group of people, who claim to be all about
> 'openness' make so little effort to be 'open'.

Openness mainly means that everybody is free to contribute, and free
to use the contributions of others. So if you think there is something
wrong with the Web pages, specific donations (of HTML, in this case)
would be welcome.

> It is indeed a sad state of affairs that there are a very large
> number of experienced software developers willing to donate their
> time and talent to the free/open software movement, who are
> effectively prevented from doing so, in a manner very similar to the
> way that Microsoft was found to have effectively prohibited
> competition in the PC market.

This is not the state of affairs. People very rarely have problems
installing gcc for the first time. Most first-time users get it with
their Linux distribution, and don't need to worry with downloading and
installing it themselves. Normally, only experienced users have the
desire to build the compiler themselves, and the documentation mainly
addresses this group. As I said, if other documentation is
contributed, it likely won't be rejected.

> in this case the barrier to entry is a lack of clearly labelled,
> simple, adequate, accurate documentation.

That is not lacking. If you obtain a good Linux distribution, it will
normally include clearly-labelled tools for software development. They
are typically labelled "development", and installing them will give
you a GCC installation out of the box. Furthermore, I think the GCC
manual should get most users started.

> I think it's great that all these people love to churn out free
> software, but please everyone, write some documentation, otherwise I
> won't know how to use it !

I'm not sure what you are trying to achieve with such a flame-bait
letter. I question the claim that there is no "basic" documentation
available for Linux. I believe there is a number of introductory
books; some of those are included with Linux distributions. If you
can't use online documentation (as your consistent failure to look in
the "right" place indicates), perhaps you are better off with printed
documentation?

Regards,
Martin


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]