I have a rather large and complex set of FORTRAN and C++ programs for a
I am using a Nvidia Cluster system that hosts Linux along with openmpi
version 1.6.1 along with
FORTRAN 77 and 90 compilers and C++. The linux system uses Bourne shells.
I have a makefile that compiles and links the object codes
To produce an executable file.
In the past I have been successful in compiling, linking, and running the
modules using IBM MPI,
As well as SUN, SGI, and CRAY. However, I cannot seem to get the FORTRAN
object files to link
With the C++ object files with this system. Unfortunately the system I am
now using has no manuals
In attempt to link, I am getting the following error messages..
"undefined reference to ranf_"
"undefined reference to ranskip_"
"undefined reference to ranget_"
I have 3 C++ routines in a module called ranf, ranskip, ranf.
In the fortran programs, I make calls to the C++ like
R = RANF
And have the C++ routine set up as ..
Real ranf (void)
It seems that it is referring to the fact that I need an underscore in the
C++ routine name,
Like real ranf_ (void)
As I said previously, the other systems I used does not require the
underscore. I thought
This one might so I tried to use the underscore but getting the same
I am attaching the makefile (compressed with bzip2) which I hope will be
I would appreciate any help in this matter. It is best to respond to me via
As it is quite infrequent that I can access the user list.