v9.0 32b broken - how to fix

we have v9 installed at two sites (a cluster and a slew of desktop)

1- on the desktops, I get
% /opt/pgi/linux86-64/9.0/bin/pgf77 -tp k8-32 -c hello.f
% /opt/pgi/linux86-64/9.0/bin/pgf77 -tp k8-32 -o hello hello.o
/usr/bin/ld: /usr/lib64/32/crt1.o: No such file: No such file or directory

/usr/lib/crt1.o is present, but if I hack the output of pgf77 -v (linker) w/ a !!:gs=64/32== (remove string ‘64/32’) I then get

/usr/bin/ld: cannot find -lpgc

2- at the other site (cluster head node) I get

% /software/pgi/linux86-64/9.0/bin/pgf77 -v -tp k8-32 -c hello.f
pgf77-Error-Unknown switch: -v
pgf77-Error-Unknown switch: -tp
pgf77-Error-file with unknown suffix ignored: k8-32
pgf77-Error-Unknown switch: -c
pgf77-Error-file with unknown suffix ignored: hello.f

but /software/pgi/linux86-64/9.0/bin/pgf77 is identical to /opt/pgi/linux86-64/9.0/bin/pgf77

Both sites are fine in 64b mode. Any ideas?


ps: hello.f is simply
program hello
c
print *, ‘hello world!’
end

Hi Sylvain K.,

Many on the newer 64-bit Linux Distros stopped installing 32-bit system libraries by default. You will need to install them and then reinstall the PGI compilers. The same issue would occur if you try to compile with “gcc -m32”.

The exact packages you need to install will depend on your Linux version. Doing a web search for “32-bit gcc” and your OS version should yield the exact libraries you need.

For example, on Ubuntu you need to have the multilib package, “g+±multilib”, as well as “libstdc++.i386”, “libgcc.i386”, “glibc.i386”, and “glibc-devel.i386”.

Hope this helps,
Mat