PTL logo

From: Stuart Fraser (stuart_at_[hidden])
Date: 2009-10-02 03:36:17


>> On Thu, 2009-10-01 at 23:01 +0100, Stuart Fraser wrote:

>> Hi,

>>

>> Hope some
>> out there can help?!?

>>

>> I am trying to build the MPI.Net bindings on Mono
>> 2.4.2.3 on both OS

>> X 10.6 (Snow Leopard), I am using the MPICH2 C libraries
>> as the

>> underlying subsystem.

>>

>>

>> Eventually I can apparently get the
>> MPI.dll to compile after applying

>> the patches previously listed, although
>> the Unsafe.pl perl script

>> patch is forbidden so I ran that by hand adding

>>
>> the /usr/local/lib/mpi.h as a second parameter.

>>

>> I can then install this
>> into the gac using the gacutil tool

>> as shown :

>> sf-mbp:mpi.net-1.0.0
>> stuart$ gacutil -l | grep MPI

>> MPI, Version=0.0.0.0, Culture=neutral,
>> PublicKeyToken=29b4a045737654fe

>> MPIUtils, Version=0.1.0.0,
>> Culture=neutral,

>> PublicKeyToken=e35b242c18c115bc
>
> Obviously I would like
>> to get the Version for MPI to be correct ?!?
> But more importantly if I try
>> to run one of the Example executables
> the library fails with the following
>> error:
>

>> sf-mbp:PingPong stuart$ mono PingPong.exe

>>

>> Unhandled
>> Exception: System.DllNotFoundException: mpich

>> at (wrapper
>> managed-to-native) MPI.Unsafe:MPI_Initialized (int&)

>> at
>> MPI.Environment.get_Initialized () [0x00000]

>> at MPI.Environment..ctor (System.String[]& args, Threading
> threading)
[0x00000]

>> at MPI.Environment..ctor (System.String[]& args) [0x00000]

>> at PingPong.Main (System.String[] args) [0x00000]
 

>> So I am not sure if there is a way to
>> hardcode that the actual libmpich2 library is in Œ/usr/local/lib¹ or if
>> there is something
> seriously wrong in my build process? (am I missing a
crucial environment variable?!)

>On 02/10/2009 01:40, "Jo Shields" <jo.shields_at_[hidden]> wrote:
>
Is there a dllmap file (MPI.dll.config)
> with a redirect from mpich.dll
to (i think) libmpich.so.0.1.1 in the same
> location as MPI.dll? It
should look like this:
<configuration>
 <dllmap
> dll="mpich" target="libmpich.so.1.1" />
</configuration>

Or very much like
> it

_______________________________________________
mpi.net mailing
> list
mpi.net_at_[hidden]
http://www.osl.iu.edu/mailman/listinfo.cgi/mpi.net

Hi that does make a difference,
I edited the .config file to reflect:

 <dllmap dll="msmpi" target="libmpich.dylib">

Which is appropriate for the osx dynamic library

And now when I runt he test I get:
sf-mbp:Debug stuart$ mono ./PingPong.exe

Unhandled Exception: System.DllNotFoundException: msmpi.dll
  at (wrapper managed-to-native) MPI.Unsafe:MPI_Initialized (int&)
  at MPI.Environment.get_Initialized () [0x00000]
  at MPI.Environment..ctor (System.String[]& args, Threading threading)
[0x00000]
  at MPI.Environment..ctor (System.String[]& args) [0x00000]
  at PingPong.Main (System.String[] args) [0x00000]

So it looks like my build went weird somewhere and build a wrapper for the
MSMPI.dll and not for MPICH2 ??

Does anyone have the patch for Unsafe.pl so I can try a clean rebuild.. :(

Rgds
Stuart

----
Stuart Fraser
e: stuart_at_[hidden]
m: 07966 242718