Gaussian g03 compiling

We have just got a new HP cluster installed under RH Linux with PGI v 7.1-6 compiler, which I think is the latest available.
I have been unable to compile g03 after several attempts.
From the make.log, the compilation fails at:
make[1]: Leaving directory `/home/software/g03’
/opt/pgi/linux86-64/7.1/bin/pgf77 -i8 ‘-mcmodel=medium’ -mp=nonuma -O2 -tp p7
-64 -Mreentrant -Mrecursive -Mnosave -Minfo -Mneginfo -time -fast -Munroll -Mvec
t=assoc,recog,cachesize:4194304,prefetch,sse -fastsse -Mscalarsse -g -o g03 ml0.
o util.a bsd/libf77blas-em64t.a bsd/libatlas-em64t.a -lpthread -lm -lc
/usr/pgi/shared/7.1/lib64: file not recognized: Is a directory
make: *** [g03] Error 2

I have no idea why /usr/pgi/shared/7.1/lib64 (which in fact is a directory) is being included in this sentence. I have been looking at the scripts an it seems that all symbols are properly defined…
Any cue will be wellcome
Thanks
F.J. Modrego

Hi,

Can you add -v to you link line and post output here? If they are too big, you can send to trs@pgroup.com and ask them to send to me.

Is it possible for you to install compilers locally and use that one? I suspect that you have a network install and the compiler driver is looking for a library in /usr/pgi/shared/7.1/lib64. If that is the case, make sure you run makelocalrc on a host that you compile to make sure that host is configured to use the compiler.

What is a hostname? Is there a file /opt/pgi/linux86-64/7.1/bin/localrc.$HOSTNAME ? $HOSTNAME is a name of your machine.

Hongyon

Yes, it is a network install and makelocalrc has been run and it seems OK. Simple fortran programs compile and run just fine…The problem seems specific (at the moment) to g03

F.J. Modrego

Hi,

Can you add -v to your link line and post your command line and output here?

Hongyon

Here are the offending lines…


make[1]: Leaving directory `/home/software/g03’
/opt/pgi/linux86-64/7.1/bin/pgf77 -v -i8 ‘-mcmodel=medium’ -mp=nonuma -O2 -tp
p7-64 -Mreentrant -Mrecursive -Mnosave -Minfo -Mneginfo -time -fast -Munroll -M
vect=assoc,recog,cachesize:4194304,prefetch,sse -fastsse -Mscalarsse -g -o g03 m
l0.o util.a bsd/libf77blas-em64t.a bsd/libatlas-em64t.a -lpthread -lm -lc

/usr/bin/ld /usr/lib64/crt1.o /usr/lib64/crti.o /opt/pgi/linux86-64/7.1-6/libso/
trace_init.o /usr/lib/gcc/x86_64-redhat-linux/3.4.6/crtbegin.o /opt/pgi/linux86-
64/7.1-6/libso/initmp.o /opt/pgi/linux86-64/7.1-6/libso/pgfmain.o -m elf_x86_64
-dynamic-linker /lib64/ld-linux-x86-64.so.2 /opt/pgi/linux86-64/7.1-6/lib/pgi.ld
-L/opt/pgi/linux86-64/7.1-6/libso -L/usr/pgi/shared/7.1/lib64 -L/opt/pgi/linux8
6-64/7.1-6/lib -L/usr/lib64 -L/usr/lib/gcc/x86_64-redhat-linux/3.4.6 ml0.o util.
a bsd/libf77blas-em64t.a bsd/libatlas-em64t.a -lpthread -lm -lc -rpath /opt/pgi/
linux86-64/7.1-6/libso -rpath /usr/pgi/shared/7.1/lib64 -rpath /opt/pgi/linux86-
64/7.1-6/lib -o g03 /usr/pgi/shared/7.1/lib64 /opt/pgi/linux86-64/7.1-6/lib/nonu
ma.o -lpgmp -lpgbind -lpthread -lpgftnrtl -lnspgc -lpgc -lrt -lpthread -lm -lgcc
-lc -lgcc /usr/lib/gcc/x86_64-redhat-linux/3.4.6/crtend.o /usr/lib64/crtn.o
/usr/pgi/shared/7.1/lib64: file not recognized: Is a directory
pgf77-Fatal-linker completed with exit code 1

make: *** [g03] Error 2

Hi,

This is a bug for network install with -mp=nonuma. We have filed TPR# 14935 for this. A workaround for now is to do either one of this:

  1. reinstall on a single system instead of network install.
  2. you install on /opt/, my assumption is that /opt is local but I could be wrong. If it is local drive, you can avoid reinstall by running makelocalrc again. For example,
    % cd /opt/pgi/linux86-64/7.1-6/bin/; makelocalrc -x /opt/pgi/linux86-64/7.1-6
    % cd /opt/pgi/linux86/7.1-6/bin; makelocalrc -x /opt/pgi/linux86/7.1-6

Sorry for the inconvenience and thank you for reporting to us.
Hongyon

Thank you for your answer. I have made a local installation an indeed it works. Gaussian 03 compiles and runs in the compilation host.
My problem is now how do I use the program in the nodes of the cluster out of the master host(where I made the local installation) . At the moment it complains (I expected it…) about

./g03: error while loading shared libraries: libpgbind.so: cannot open shared object file: No such file or directory

I suppose that my licence does not allow to make a local installation in every node of the cluster although I dont need to compile but just run the compiled program…

Hi,

For a dynamically linked program, you can copy .so libraries in libso and libso-gh(this is for barcelona system) to the system you want to run or your home directory and then set LD_LIBRARY_PATH to that directory.

Hongyon

Edit the file /opt/pgi/linux86-64//7.0-7/bin/x86rc
Out comment this line (two places) set(NUMAOBJS=$if($index($TARGET,linux86,linux86-64),$COMPLIB/nonuma.o))
and insert insted this line
set(NUMAOBJS=/opt/pgi/linux86-64/7.0-7/lib/nonuma.o)

/ncwh