pgf77 -tp k8-32

I am trying to compile some legacy code that has been finicky in the past, but did work with the PGI workstation package for me on a different platform.

The code assumes 32 bit pointers where as the 64 bit system (AMD Opteron Chip with Ubuntu 64 bit Linux) I am using is producing 64 bit pointers. The solution was to compile the code with a 32 bit flag called e.g. pgf77 -tp k8-32.

While this worked for me in the past, I am now getting this error

“pgf77-Fatal–tp k8-32 is not supported in this installation”

I’m wondering if -tp k8-32 is deprecated or why this is not working? I have tried -tp p7, which the compiler accepts, but it does not solve the issue as it did last time. I am using an evaluation license and will buy the software if this works, so am wondering if I have encountered a limitation of the evaluation package or if something else has changed?

Thanks for any help you can provide.

Hi v0rt3x,

You are most likely missing the Linux 32-bit compatibility on your 64-bit system (Ubuntu does not install them by default). While Ubuntu seems to change things, I believe the command to get all necessary 32-bit stuff is

sudo apt-get install gcc-multilib libc6-i386 lib6-dev-i386

After installing the 32-bit system libraries and header files, you will need to reinstall the PGI compilers.

Also, if you are using new Ubuntu releases, please make sure to use the latest PGI release. Ubutunu has a tendency to arbitrarily move system files making it difficult for our installer to find the 32-bit systems libraries and it usual takes us one minor release to update our installer.

If you still have trouble installing the 32-bit PGI Compilers, please contact PGI Customer Service (trs@pgroup.com)

Thanks,
Mat