Ryan Mansfield(deleted)
|
Re: difference between qcc -V3.3.5,gcc_ntoppcbce and powerpc-unknown-nto-qnx6.3.0
|
Ryan Mansfield(deleted)
07/25/2008 7:11 AM
post11051
|
Re: difference between qcc -V3.3.5,gcc_ntoppcbce and powerpc-unknown-nto-qnx6.3.0
Amit Gourgonda wrote:
> Hi,
>
> I am porting a middleware application to work on QNX. My development machine is Fedora 8 x86 and target is ppc QNX
machine. I want to
> 1. Which compiler should I use for compiling the application?
qcc and powerpc-unknown-nto-qnx6.3.0-gcc are known as compiler drivers.
They handle processing of some command line options and then invoke the
various stages of the compile such as calling the compiler, assembler,
and linker.
If you call:
powerpc-unknown-nto-qnx6.3.0-gcc t.c -v -n
and
qcc -V3.3.5,gcc_ntoppcbe t.c -v -n
you will see that they both call the same underlying compiler
(/usr/qnx632/host/qnx6/x86/usr/lib/gcc-lib/powerpc-unknown-nto-qnx6.3.0/3.3.5/cc1).
> 2. What is the difference between qcc -V3.3.5,gcc_ntoppcbce and powerpc-unknown-nto-qnx6.3.0?
The differences are minimal. qcc only handles a subset of gcc driver
options. But all of the compiler options not handled by the driver (the
ones passed down to cc1/cc1plus stage) can be passed down by qcc to the
compiler stage (cc1/cc1plus) using -Wc, in front of the option.
One other difference is that for C++ "qcc -V3.3.5,gcc_ntoppcbe" uses
Dinkumware C++ library and powerpc-unknown-nto-qnx6.3.0 uses the GNU
libstdc++ library. If you want to use the qcc to use the GNU libstdc++
library, call qcc -V3.3.5,gcc_ntox86_gpp.
> Please guide me on this. I will appreciate if somebody can provide me some documents on these compiler and/or on QNX
porting would help me a lot.
It depends on whether the application you are porting relies on any
specific gcc driver options. All of the options that start with -f and
-m are options to cc1/cc1plus. Some projects use the gcc -M options to
generate makefile dependencies which collides with the qcc -M option for
mapfile generation. If your application only uses standard compiler
driver options (e.g -o, -S, -c, etc), you probably could use the qcc and
gcc drivers interchangeably. Our documentation recommends the use of
qcc over the gcc driver.
http://www.qnx.com/developers/docs/6.3.2/neutrino/utilities/q/qcc.html
http://gcc.gnu.org/onlinedocs/gcc-3.3.5/gcc/
Regards,
Ryan Mansfield
|
|
|