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 <fara...@zonnet.nl>: > 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. >