Hi
 
I have read that boost::mpi package is has many advantages and want to use it in for development in Visual Studio 2010/12 environment
 
I downloaded OpenMPI version 1.62 which is the last version supporting binaries for windows and added the Bin directory to my PATH
 
I downloaded the Boost Library
I found out how to change the user-jam (using mvsc; using mpi;) and mpi-jam ( local cluster_pack_path_native = "C:\\Workspace\\Lib\\OpenMPI_v1.6.2-x64") files in order to compile the mpi library
 
I managed to Build the MPI and SERIALIZATION libraries
 
HOWEVER
I am using visual studio 2012
I added the libs and includes for the openmpi
 
So I MANAGE to compile normal MPI programs and run it using mpiexec I add the libs
libmpi.lib
libmpi_cxx.lib
libopen-pal.lib
libopen-rte.lib
and Define
OMPI_IMPORTS=1
OPAL_IMPORTS=1
ORTE_IMPORTS=1
 
BUT when I try to compile boost::mpi simplest program
 

#include <boost/mpi/environment.hpp>

#include <boost/mpi/communicator.hpp>

#include <iostream>

int main( int argc, char *argv[] )

{

boost::mpi::environment env(argc, argv);

boost::mpi::communicator world;

std::cout << "I am process " << world.rank() << " of " << world.size() << "." << std::endl;

  return 0;

}

 I get the following unresolved external symbol though when inspecting the libmpi.lib I  SEE Those METHODS (when using DUMPBIN /SYMBOLS)  
 
How can I solve that?
Maybe I have to recompile the boost::mpi lib differently with some defines???
 
Please Help me find a solution
Best
Didi
 
The linkage errors output:

libboost_mpi-vc110-mt-gd-1_54.lib(environment.obj) : error LNK2001: unresolved external symbol ompi_mpi_comm_world

1>libboost_mpi-vc110-mt-gd-1_54.lib(communicator.obj) : error LNK2019: unresolved external symbol ompi_mpi_comm_world referenced in function "public: char & __cdecl std::vector<char,class boost::mpi::allocator<char> >::operator[](unsigned __int64)" (??A?$vector@DV?$allocator@D@mpi@boost@@@std@@QEAAAEAD_K@Z)

1>libboost_mpi-vc110-mt-gd-1_54.lib(environment.obj) : error LNK2001: unresolved external symbol ompi_mpi_errors_return

1>libboost_mpi-vc110-mt-gd-1_54.lib(communicator.obj) : error LNK2019: unresolved external symbol ompi_mpi_errors_return referenced in function "protected: unsigned __int64 __cdecl std::vector<char,class boost::mpi::allocator<char> >::_Grow_to(unsigned __int64)const " (?_Grow_to@?$vector@DV?$allocator@D@mpi@boost@@@std@@IEBA_K_K@Z)

1>libboost_mpi-vc110-mt-gd-1_54.lib(communicator.obj) : error LNK2001: unresolved external symbol ompi_mpi_comm_null

1>libboost_mpi-vc110-mt-gd-1_54.lib(communicator.obj) : error LNK2001: unresolved external symbol ompi_mpi_group_empty

1>libboost_mpi-vc110-mt-gd-1_54.lib(group.obj) : error LNK2001: unresolved external symbol ompi_mpi_group_empty

1>libboost_mpi-vc110-mt-gd-1_54.lib(communicator.obj) : error LNK2001: unresolved external symbol ompi_request_null

1>libboost_mpi-vc110-mt-gd-1_54.lib(request.obj) : error LNK2001: unresolved external symbol ompi_request_null

1>libboost_mpi-vc110-mt-gd-1_54.lib(communicator.obj) : error LNK2001: unresolved external symbol ompi_mpi_unsigned_long_long

1>libboost_mpi-vc110-mt-gd-1_54.lib(point_to_point.obj) : error LNK2001: unresolved external symbol ompi_mpi_unsigned_long_long

1>libboost_mpi-vc110-mt-gd-1_54.lib(communicator.obj) : error LNK2001: unresolved external symbol ompi_mpi_packed

1>libboost_mpi-vc110-mt-gd-1_54.lib(point_to_point.obj) : error LNK2001: unresolved external symbol ompi_mpi_packed

1>libboost_mpi-vc110-mt-gd-1_54.lib(communicator.obj) : error LNK2001: unresolved external symbol ompi_mpi_info_null

1>libboost_mpi-vc110-mt-gd-1_54.lib(point_to_point.obj) : error LNK2001: unresolved external symbol ompi_mpi_info_null

1>libboost_mpi-vc110-mt-gd-1_54.lib(mpi_datatype_cache.obj) : error LNK2001: unresolved external symbol ompi_mpi_datatype_null

1>C:\Workspace\Whale\x64\Debug\SimpleClusterJobDispatcher.exe : fatal error LNK1120: 9 unresolved externals