# v9.0 32b broken - how to fix

**URL:** <https://forums.developer.nvidia.com/t/v9-0-32b-broken-how-to-fix/132858>\
**Category:** Legacy PGI Compilers (archived)\
**Created:** [March 22, 2012, 9:02pm UTC](https://forums.developer.nvidia.com/t/v9-0-32b-broken-how-to-fix/132858 "2012-03-22T21:02:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Sylvain\_K](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@Sylvain\_K](https://forums.developer.nvidia.com/u/Sylvain_K)\
**Post date:** [March 22, 2012, 9:02pm UTC](https://forums.developer.nvidia.com/t/v9-0-32b-broken-how-to-fix/132858/1 "2012-03-22T21:02:40Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![MatColgrove](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/matcolgrove/32/14047_2.png) [@MatColgrove](https://forums.developer.nvidia.com/u/MatColgrove)\
**Post date:** [March 22, 2012, 10:02pm UTC](https://forums.developer.nvidia.com/t/v9-0-32b-broken-how-to-fix/132858/2 "2012-03-22T22:02:09Z")

</div>

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
