Hi Shiqing,
> It seems that the runtime environment is messed up with the different
> versions of Open MPI. I suggest you completely remove all the
> installations and install 1.6.1 again (just build the installation
> project again). It should work without any problem under Cygwin too.
I removed openmpi-1.6 und rebuilt openmpi-1.6.1. Now I can compile and
run a program in 32-bit mode but have still some problems.
D:\...\prog\mpi\small_prog>mpicc init_finalize.c
Microsoft (R) 32-Bit C/C++-Optimierungscompiler Version
16.00.40219.01 für 80x86
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.
init_finalize.c
Microsoft (R) Incremental Linker Version 10.00.40219.01
Copyright (C) Microsoft Corporation. All rights reserved.
/out:init_finalize.exe
"/LIBPATH:C:\Program Files (x86)\openmpi-1.6.1\bin/../lib"
libmpi.lib
libopen-pal.lib
libopen-rte.lib
advapi32.lib
Ws2_32.lib
shlwapi.lib
init_finalize.obj
D:\...\prog\mpi\small_prog>mpiexec init_finalize.exe
---------------------------------------------------------------------
Sorry! You were supposed to get help about:
invalid if_inexclude
But I couldn't open the help file:
D:\...\prog\mpi\small_prog\..\share\openmpi\help-mpi-btl-tcp.txt:
No such file or directory. Sorry!
---------------------------------------------------------------------
Hello!
Why does "mpiexec" look for the help file relativ to my current
program and not relative to itself? The file is part of the
package.
dir "c:\Program Files (x86)\openmpi-1.6.1\share\openmpi\help-mpi-btl-tcp.txt"
...
03.04.2012 16:30 631 help-mpi-btl-tcp.txt
Must I change something in the source code or can I set an environment
variable for help files? Why does "mpiexec" want to give some help at all?
I don't get this message for openmpi-1.5.1.
D:\...\prog\mpi\small_prog>mpicc init_finalize.c
Microsoft (R) 32-Bit C/C++-Optimierungscompiler Version 16.00.40219.01
für 80x86
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.
init_finalize.c
Microsoft (R) Incremental Linker Version 10.00.40219.01
Copyright (C) Microsoft Corporation. All rights reserved.
/out:init_finalize.exe
"/LIBPATH:C:/Program Files (x86)/openmpi-1.5.1/lib"
libmpi.lib
libopen-pal.lib
libopen-rte.lib
advapi32.lib
Ws2_32.lib
shlwapi.lib
init_finalize.obj
D:\...\prog\mpi\small_prog>mpiexec init_finalize.exe
Hello!
D:\...\prog\mpi\small_prog>
I can also compile in 64-bit mode but the program hangs.
D:\...\prog\mpi\small_prog>mpicc init_finalize.c
Microsoft (R) C/C++-Optimierungscompiler Version 16.00.40219.01 für x64
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.
init_finalize.c
Microsoft (R) Incremental Linker Version 10.00.40219.01
Copyright (C) Microsoft Corporation. All rights reserved.
/out:init_finalize.exe
"/LIBPATH:C:\Program Files\openmpi-1.6.1\bin/../lib"
libmpi.lib
libopen-pal.lib
libopen-rte.lib
advapi32.lib
Ws2_32.lib
shlwapi.lib
init_finalize.obj
D:\...\prog\mpi\small_prog>mpiexec init_finalize.exe
^C
D:\...\prog\mpi\small_prog>
It's the same if I compile a 64-bit program with openmpi-1.5.1. The program
itself is very small.
#include <stdio.h>
#include <stdlib.h>
#include "mpi.h"
int main (int argc, char *argv[])
{
MPI_Init (&argc, &argv);
printf ("Hello!\n");
MPI_Finalize ();
return EXIT_SUCCESS;
}
Any ideas why the 64-bit version hangs? Thank you very much for any help
in advance.
Kind regards
Siegmar