aix gcc question
Robert A Nesius
rnesius@ichips.intel.com
Fri Jan 18 14:15:00 GMT 2002
I got a build of gcc on aix 4.3.3. to compile. The same
version of gcc (g++ being the compiler I'm invoking) on
linux compiles the following code:
#include <iostream>
int main() {
unsigned long long int x = 0;
std::cout << x << std::endl;
}
BUT, on AIX it does not. It complains about an ambiguous
overload of the << operator, and lists all the types that
are actually defined on that operator.
I wrote a C program that just declared an unsigned long long int
to see if /usr/bin/cc understood it, and in fact cc (xlc)
did handle the type with no trouble.
So I'm a bit confused as to why g++ can't handle this on
AIX 4.3.3, since it seems the type unsigned long long int
was at least defined in the original system headers.
Any ideas?
Follow up question - might it make sense to build a 64-bit
compiler instead of a 32-bit one? If so, does anyone have
some advice to offer on how to proceed with that? I know
how to tell /usr/bin/cc to compile 64bit objects (-q64),
but I've noticed that when I put vendor compiler options
in CFLAGS and then run configure, those same values in
CFLAGS get pased on to the stage 2 and stage3 compilers
which don't understand -q64, and complain. Can I just
ignore the complaints about "unknown option" or am I
going about things in the wrong way? I didn't see anything
I could assign to --host-prefix to force configure to
set things up for 64-bit mode...
Thanks for any help/ideas you can offer.
-Rob
--
#include <sig.h>
------------------------------------------------------------------
Robert Nesius rnesius@ichips.intel.com 503.712.2181
DPG Engineering Computing SW Applications Team
More information about the Gcc-help
mailing list