Hi again folks!! I'm really happy to announce you, guys, that, eventually, I got OcamlMPI working good on my cluster. What I mean is: the problem about compiling and executing the examples files provided by the latest release of OcamlMPI (i.e: testmpi 'n test_mandel) is now definitely solved. Thus, once more, I would like to thank Andres Varon and Rabih Chaar for helping me handling that issue. You guys rock! :D Well... let me to explain how I get OcamlMPI working nice with MPICH2. Then, maybe, this could be useful for someone else. Here we go: By watching the Makefile of OcamlMPI, I could understand that it is always making reference to libmpi.a library (-lmpi). However, MPICH2 doesn't have any libmpi.a. So, what to do then?? Well.. there isn't any libmpi.a but there is a lib called libmpich.a Therefore, all I did was replace the '-lmpi' options found in such Makefile with '-lmpich'. What this means it that the Makefile will now look for a lib called libmpich.a (and no more libmpi.a) which exists in the MPICH2 implementation of MPI. That is it!! After doing this and following some further instructions as we can read in the README file (e.g.: ./configure, make, make install, etc) found in the OcamlMPI install directory, everything worked good. As mentioned earlier by our friend Andres Varon, the line "ocamlc -cc mpicc -o testmpi unix.cma mpi.cma test.ml -ccopt -L." was enough to Ocaml for proper compilation and linking. OK. If MPICH2 is proper installed and configured on your cluster system, there will be no problems for running the examples files (as well as others executables). So, OcamlMPI problem is now solved. Thanks y'all guys for everything you did. Best regards, Rodiney E. On 10/1/07, Andres Varon wrote: > > > On Sep 29, 2007, at 11:22 PM, Rod wrote: > > Hi there!! Here we go! > Well.. I'm still having some troubles with OcamlMPI. > Mr. Andres Varon, I just tried to compile test.ml file (i.e.: regression > test), which is available on the latest release provided by Mr. Xavier > Leroy, by doing what you suggested me to do. Unfortunately, it still didn't > work. Thanks anyway, mate! > > So, after some time working on that issue, I've eventually got it compiled > by doing the following: > > [rodiney@homer ocamlmpi-1.01]$ ocamlc -o testmpi mpi.cma unix.cma test.ml-ccopt -L/usr/lib/lam -ccopt -L/usr/lib/ocaml/ocamlmpi -ccopt -llam -ccopt > -lutil > > > Here is the output: > > [rodiney@homer ocamlmpi-1.01]$ ocamlc -o testmpi mpi.cma unix.cma test.ml-ccopt -L/usr/lib/lam -ccopt -L/usr/lib/ocaml/ocamlmpi -ccopt -llam -ccopt > -lutil > File "test.ml", line 144, characters 6-9: > Warning Y: unused variable res. > [rodiney@homer ocamlmpi-1.01]$ > > As you all can see, there is only a warning message. I mean.. no big deal. > So, that command line works pretty good. > The problem occurs when I try to execute 'testmpi' file. > I'm getting the following message when doing this: > > rodiney@homer ocamlmpi-1.01]$ mpirun -np 1 ./testmpi > > --------------------------------------------------------------------------------------- > It seems that there is no lamd running on the host homer. > > This indicates that the LAM/MPI runtime environment is not operating. > The LAM/MPI runtime environment is necessary for MPI programs to run > (the MPI program tired to invoke the "MPI_Init" function). > > Please run the "lamboot" command the start the LAM/MPI runtime > environment. See the LAM/MPI documentation for how to invoke > "lamboot" across multiple machines. > > --------------------------------------------------------------------------------------- > > The same message appears by doing 'mpiexec -n 1 ./testmpi' as well. > > I would like to remember you, guys, that I'm using MPICH2 implementation > of MPI (mpich2-1.0.6). > So, although MPICH2 is already installed and configured properly, the > message displayed above is just asking to start 'lamboot'. However, > 'lamboot' is a tool provided by LAM/MPI: yet another an MPI implementation. > Why it is asking me for 'lamboot' if I'm using the 'mpd' daemon (i.e.: the > process manager) from MPICH2?? > > Hmm. OK.. I've just started 'lamboot' and I did 'mpiexec -n 1 ./testmp' > (or 'mpirun -np 1 ./testmpi') once more. Below is the output: > > [rodiney@homer ocamlmpi-1.01]$ mpiexec -n 1 ./testmpi > MPI process rank 0 (n0, p3915) caught a SIGSEGV in MPI_Errhandler_free. > Rank (0, MPI_COMM_WORLD): Call stack within LAM: > Rank (0, MPI_COMM_WORLD): - MPI_Errhandler_free() > Rank (0, MPI_COMM_WORLD): - MPI_Errhandler_set() > Rank (0, MPI_COMM_WORLD): - main() > > So, that's the point. What should I do to solve this problem and get > 'testmpi' working?? > Please, help me!!! I'm almost loosing my mind!! LOL > I'm looking forward for any help!!! > Thanks in advance and sorry for such a long message. That's it!! > > > You are compiling with lam, and so your program is not using MPICH2 but > Lam/MPI. I strongly recommend you to use the line I suggested to compile the > program, and make sure that the mpicc, mpiexe, and mpd that you run belong > the the version of MPICH2 that you have installed. (you can use "which > mpicc" to verify the path of the executable mpicc found by your shell, and > that the path belongs to MPICH2's mpicc). > > Check the documentation of MPICH2 for compilation instructions. Really, > all you need is mpicc. That's part of MPI's standard. > > That's all the help I can give you. Good luck, > > Andres > > > > Best regards, > > Rodiney > > >