Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |  

This web mail archive is frozen.

This page is part of a frozen web archive of this mailing list.

You can still navigate around this archive, but know that no new mails have been added to it since July of 2016.

Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.

Subject: Re: [OMPI users] Win32 compilation broken (MSVC2008, OpenMPI1.4.1)
From: T. Farago (farago1_at_[hidden])
Date: 2010-01-19 06:15:18

He, this is getting annoying, but I have another question:
I am trying to get windows and linux hosts to work together. Is this
even possible with openmpi? I tried mpich2 first but there were
several problems and on google I found some hints that openmpi will do
the job. However I don't see any cross-platform run-time systems.
Obviously rsh/ssh doesn't work on Windows and neither does MS CCP on

The FAQ does state heterogeneous execution environments but I get the
feeling Windows <> Linux is not what is meant there.


2010/1/19 T. Farago <farago1_at_[hidden]>:
> Is the windows build actually working? I have the static library
> version working correctly, however shared libraries give linker errors
> when compiling an MPI application. It seems libmpi_cxx.lib doesn't
> export any functions, only constant data members (checked through
> dependency walker of libmpi_cxx.dll and dumpbin of libmpi_cxx.lib)
> Eg in a very simple MPI application I get unresolved external symbols
> about MPI::Datatype::Free, MPI::Win::Free, MPI::Comm::Comm and
> ompi_mpi_cxx_op_intercept. I am linking to libmpi.lib and
> libmpi_cxx.lib, both of which have been built with the CMake solution
> where the only changes were the enabling of heterogeneous support, the
> one in osc_rdma_data_move.c and setting Link Library Dependencies to
> yes as per my previous mail.
> 2010/1/19 T. Farago <farago1_at_[hidden]>:
>> Information: Windows XP SP3 x86, MSVC 2008 Professional, openmpi 1.4.1
>> There is a compile error if I enable heterogeneous support, see error
>> message below. The relevant line is:
>> payload=  (void*)malloc(buflen);
>> ompi/mca/osc/rdma/osc_rdma_data_move.c(1059): error C2440: '=': cannot
>> convert from 'void *' to 'void **'
>> gcc doesn't complain, I've changed void* to void** which seems to
>> "fix" the problem
>> Also when generating the MSVC2008 project files through CMake (2.8.0)
>> there are linker errors for all the project files. libopen-pal.lib and
>> libopen-rte.lib aren't linked in with the other projects. I couldn't
>> fnd anything in CMake to fix this, so I manually edited each project
>> file to change LinkLibraryDependencies to TRUE which for some reason
>> is set to FALSE by CMake. The relevant option in Visual Studio is in
>> Configuration Properties > Linker > General > Link Library
>> Dependencies. I am not familiar with CMake so unfortunately I can't
>> offer a proper solution.