LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2005-01-26 01:16:20


So the problem appears to be that the aio library is either not being
found or is not linked in properly when you attempt to build MPI
executables that use MPI-2 IO function calls, which then results in
undefined symbols.

There's two common causes for this that I can think of off the top of
my head:

1. The "mpicc" that you're using is not adding "-laio" properly. Can
you check the output of "mpicc -showme" and confirm that it's adding
"-laio"?

2. Solaris has a nasty habit of displaying misleading error messages
when you inadvertantly mix 32 and 64 bit entities when linking. For
example, if you're creating a 64 bit executable and you -lsomething,
where libsomething.a is a 32 bit library, the Solaris linker won't tell
you that you linked a 32 bit library and it ignored it -- it'll just
silently ignore libsomething.a and then complain about missing symbols.
  So I'm wondering if you're seeing something like this here.

Keep in mind that you'll need two separate installations of LAM -- one
for 32 bit applications and one for 64 bit applications (and therefore
you'll have two different sets of wrapper compilers [mpicc and
friends]). So before you compile the lamtests, the easiest thing to do
is to set your $PATH to point to the LAM installation that you want
(and therefore the mpicc that you want) -- ensuring that you compile
lamtests in 32 bit mode with the 32 bit installation of LAM, and
compile lamtests in 64 bit mode with the 64 bit installation of LAM.

Can you double check that you did this properly?

On Jan 24, 2005, at 1:12 AM, fjcsuper_at_[hidden] wrote:

> Hi all,
>
> I am trying to use the LAM test suite, lamtests-7.1.1 on Solaris 10
> x86, for both 32 and 64-bit machines.
>
> Both produce the same errors at make, but I suspect there might be
> configuration problems too. I have attached both the configure and
> make output on both 32 and 64-bit machines.
>
> Here is the laminfo for the 32-bit machine (same for 64-bit):
>
> LAM/MPI: 7.1.1
> Prefix: /home/fjcsuper/lamMpi
> Architecture: i386-pc-solaris2.10
> Configured by:
> Configured on: Wed Jan 19 13:04:12 SGT 2005
> Configure host: mpi32
> Memory manager: none
> C bindings: yes
> C++ bindings: yes
> Fortran bindings: yes
> C compiler: /opt/SUNWspro/bin/cc
> C++ compiler: /opt/SUNWspro/bin/CC
> Fortran compiler: /opt/SUNWspro/bin/f90
> Fortran symbols: underscore
> C profiling: yes
> C++ profiling: yes
> Fortran profiling: yes
> C++ exceptions: no
> Thread support: yes
> ROMIO support: yes
> IMPI support: no
> Debug support: no
> Purify clean: no
> SSI boot: globus (API v1.1, Module v0.6)
> SSI boot: rsh (API v1.1, Module v1.1)
> SSI boot: slurm (API v1.1, Module v1.0)
> SSI coll: lam_basic (API v1.1, Module v7.1)
> SSI coll: shmem (API v1.1, Module v1.0)
> SSI coll: smp (API v1.1, Module v1.2)
> SSI rpi: crtcp (API v1.1, Module v1.1)
> SSI rpi: lamd (API v1.0, Module v7.1)
> SSI rpi: sysv (API v1.0, Module v7.1)
> SSI rpi: tcp (API v1.0, Module v7.1)
> SSI rpi: usysv (API v1.0, Module v7.1)
> SSI cr: self (API v1.0, Module v1.0)
>
> Thank you for your time.
>
> Regards,
> Juncheng<lamTests.tar>_______________________________________________
> This list is archived at http://www.lam-mpi.org/MailArchives/lam/

-- 
{+} Jeff Squyres
{+} jsquyres_at_[hidden]
{+} http://www.lam-mpi.org/