The ./install script didn’t work well on Fedora Core 3 on a dual Opteron. I manually edited localrc as follows:
]$ cat /usr/pgi/linux86-64/5.2/bin/localrc
set LFC=-lg2c;
set LDSO=/lib64/ld-linux-x86-64.so.2;
set GCCDIR=/usr/lib/gcc/x86_64-redhat-linux/3.4.2;
set GCCINC=/usr/lib/gcc/x86_64-redhat-linux/3.4.2/include;
set G77DIR=/usr/lib/gcc/x86_64-redhat-linux/3.4.2;
set THROW=__THROW=;
makelocalrc executed by root Tue Jan 25 17:48:23
And this gets pgcc, pgf77, and pgf90 compiling “hello world” but pgCC fails.
$ uname -a
Linux test-net.stanford.edu 2.6.10-1.741_FC3smp #1 SMP Thu Jan 13 16:58:29 EST 2005 x86_64 x86_64 x86_64 GNU/Linux
$ rpm -qi glibc | head -2
Name : glibc Relocations: (not relocatable)
Version : 2.3.4 Vendor: Red Hat, Inc.
$ env | grep pgi
PATH=/usr/pgi/linux86-64/5.2/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin
PGI=/usr/pgi
MANPATH=/usr/pgi/linux86-64/5.2/man
LM_LICENSE_FILE=/usr/pgi/license.dat
$ cat hello.cc
#include
int main() {
std::cout << “hello world\n”;
return -1;
}
$ g++ hello.cc
$ ./a.out
hello world
$ pgCC hello.cc
“/usr/pgi/linux86-64/5.2/include/CC/stl/_limits.h”, line 155: error:
identifier “CHAR_BIT” is undefined
((int)((sizeof(_Int) * (CHAR_BIT))) - ((__imin == 0) ? 0 : 1))
^
detected during instantiation of class “std::_Integer_limits<_Int,
__imin, __imax, __idigits, __ismod> [with _Int=bool,
__imin=false, __imax=true, __idigits=1, __ismod=false]” at
line 245
“/usr/pgi/linux86-64/5.2/include/CC/stl/_limits.h”, line 252: error:
identifier “SCHAR_MAX” is undefined
: public _Integer_limits<char, CHAR_MIN, CHAR_MAX, -1, true>
^
“/usr/pgi/linux86-64/5.2/include/CC/stl/_limits.h”, line 155: error:
identifier “CHAR_BIT” is undefined
((int)((sizeof(_Int) * (CHAR_BIT))) - ((__imin == 0) ? 0 : 1))
^
detected during instantiation of class “std::_Integer_limits<_Int,
__imin, __imax, __idigits, __ismod> [with _Int=char,
__imin=, __imax=,
__idigits=-1, __ismod=true]” at line 252
“/usr/pgi/linux86-64/5.2/include/CC/stl/_limits.h”, line 155: error:
identifier “CHAR_BIT” is undefined
((int)((sizeof(_Int) * (CHAR_BIT))) - ((__imin == 0) ? 0 : 1))
^
detected during instantiation of class “std::_Integer_limits<_Int,
__imin, __imax, __idigits, __ismod> [with _Int=signed
char, __imin=, __imax=,
__idigits=-1, __ismod=true]” at line 258
“/usr/pgi/linux86-64/5.2/include/CC/stl/_limits.h”, line 155: error:
identifier “CHAR_BIT” is undefined
((int)((sizeof(_Int) * (CHAR_BIT))) - ((__imin == 0) ? 0 : 1))
^
detected during instantiation of class “std::_Integer_limits<_Int,
__imin, __imax, __idigits, __ismod> [with _Int=unsigned
char, __imin=(unsigned char)‘\000’,
__imax=, __idigits=-1, __ismod=true]” at
line 264
"/usr/pgi/linux86-64/5.2/include/CC/stl/limits.h", line 155: error:
identifier “CHAR_BIT” is undefined
((int)((sizeof(Int) * (CHAR_BIT))) - ((imin == 0) ? 0 : 1))
^
pgCC-Fatal-/usr/pgi/linux86-64/5.2/bin/pgcpp1 TERMINATED by signal 11
Arguments to /usr/pgi/linux86-64/5.2/bin/pgcpp1
/usr/pgi/linux86-64/5.2/bin/pgcpp1 --llalign -Dunix -D__unix -D__unix -Dlinux -D__linux -D__linux -D__inline__= -D__NO_INLINE__ -D__NO_MATH_INLINES -D__x86_64__ -D__LONG_MAX__=9223372036854775807L ‘-D__SIZE_TYPE__=unsigned long int’ ‘-D__PTRDIFF_TYPE__=long int’ -D__THROW= -D__amd64__ -D__PGI -I/usr/pgi/linux86-64/5.2/include/CC -I/usr/pgi/linux86-64/5.2/include -I/usr/local/include -I/usr/lib/gcc/x86_64-redhat-linux/3.4.2/include -I/usr/lib/gcc/x86_64-redhat-linux/3.4.2/include -I/usr/include -q -o /tmp/pgCCaaaaanoAau.il hello.cc