From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Martin v. Loewis" To: jack.smith@csfb.com Cc: gcc-help@gcc.gnu.org Subject: Re: libstdc++ included?. Date: Mon, 08 May 2000 07:28:00 -0000 Message-id: <200005081416.QAA01128@loewis.home.cs.tu-berlin.de> References: X-SW-Source: 2000-05/msg00041.html > 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