cc/CC vs qcc vs gcc

Ok, being new to gnu, I’m confused, and the documentation doesn’t help
me, and kinda confuses me.

On the project I’m working on the makefiles use cc, sometimes $(CC) in
the make files. From the helpviewer docs, I have learned that cc/CC is
a utility that links to qcc for c and c++ respectively. From the
documentation for qcc, I find that the options for warnings are
-w. But my make uses -wall. Which from the doc’s is a gcc option,
where it tells you -w and -W and somewhere shows -Wall, but tells you to
use qcc instead. But it doesn’t say that all gcc options are good in
qcc. Furthermore, the options are defined somewhat in qcc but hardly
any of the options are defined in gcc. Are these docs just that
unfinished, or do I need to go get my own gcc docs? I think gcc docs
should be included, but if I have to get my own, the minor documentation
on the utility should note that and recomend a place to get the docs
either by snail or e-mail.

Thanks!

Scott

So it was my question on newuser newsgroup about this:
Here you go:

Sefan Parvu <sparvu@cc.hut.fi> wrote:

To make clear about these 2 compilers:

1- cc is QSSL’s compiler around 30k
2- gcc is GNU compiler. around 60k

3-qcc is the same thing as cc.

Correct ?

Nope. Both gcc, cc, and qcc are wrappers for the gnu compiler
collection. :slight_smile:
In the end, they all call the compiler and linker.

chris



Both qcc and gcc are compiler drivers. They process the options,
do some inference based on filename extensions, and then invoke the
compiler backend programs. These are the same for both gcc and qcc.

cpp - C pre processor
cc1 - C compiler
cc1plus - C++ compiler
as - assembler
ld - linker

You can see how these are executed by passing the -v option
to qcc and gcc.

The reason for qcc is a long story. Originally it was because
we wanted to support multiple compiler backends behind the one
compiler driver.

You can use either - for porting projects I generally use gcc.
For original projects I usually use qcc, since it is more convenient
in some respects.

Also, qcc does the old QNX4 trick of dropping the priority of the
backend down one level from the driver. This has the effect of
not freezing the machine up when you are compiling.


cburgess@qnx.com

hope it helps to you this.
stef



“J. Scott Franko” wrote:

Ok, being new to gnu, I’m confused, and the documentation doesn’t help
me, and kinda confuses me.

On the project I’m working on the makefiles use cc, sometimes $(CC) in
the make files. From the helpviewer docs, I have learned that cc/CC is
a utility that links to qcc for c and c++ respectively. From the
documentation for qcc, I find that the options for warnings are
-w. But my make uses -wall. Which from the doc’s is a gcc option,
where it tells you -w and -W and somewhere shows -Wall, but tells you to
use qcc instead. But it doesn’t say that all gcc options are good in
qcc. Furthermore, the options are defined somewhat in qcc but hardly
any of the options are defined in gcc. Are these docs just that
unfinished, or do I need to go get my own gcc docs? I think gcc docs
should be included, but if I have to get my own, the minor documentation
on the utility should note that and recomend a place to get the docs
either by snail or e-mail.

Thanks!

Scott