You are right, that was what I was missing. Thank you. Anyway, no I can compile it and run it, but the program always exits at the line Graph g(4) with exit code 0x1. It quits in the inizialization of mpi_process_group::impl::impl(std::size_t num_headers, std::size_t buffer_sz, communicator_type parent_comm) : comm(parent_comm, boost::mpi::comm_duplicate), oob_reply_comm(parent_comm, boost::mpi::comm_duplicate), allocated_tags(boost::mpi::environment::max_tag()) exactly in libs/mpi/src/communicator.cpp communicator::communicator(const ...) on the line BOOST_MPI_CHECK_RESULT(MPI_Comm_dup, (comm, &newcomm)); It doesn't crash or anything, just exits the code "normally" with exit code 1. Do you have any idea what is wrong? Jeremiah Willcock wrote:
On Mon, 9 Nov 2009, Ondrej Sluciak wrote:
Ok, I tried the simplest possible example, but just didn't figure out where the problem is. I am on windows, mpich2 installed, all boost libs correctly compiled with mpi, but if I do something like
#include
#include #include #include void main(){ using namespace boost; typedef adjacency_list
, directedS> Graph; Graph g(4);
};
I always get linking problems like: Error 7 error LNK2019: unresolved external symbol "void __cdecl boost::graph::distributed::synchronize(class boost::graph::distributed::mpi_process_group const &)" (?synchronize@distributed@graph@boost@@YAXABVmpi_process_group@123@@Z) referenced in function "public: __thiscall boost::adjacency_list
,struct boost::directedS,struct boost::no_property,struct boost::no_property,struct boost::no_property,struct boost::listS>::~adjacency_list ,struct boost::directedS,struct boost::no_property,struct boost::no_property,struct boost::no_property,struct boost::listS>(void)" (??1?$adjacency_list@UvecS@boost@@U?$distributedS@Vmpi_process_group@distributed@graph@boost@@UvecS@4@UdefaultS@4@@2@UdirectedS@2@Uno_property@2@U52@U52@UlistS@2@@boost@@QAE@XZ) boostTest2.obj I think I have included all the necessary libs (including mpi.lib from mpich directory), so I still don't understand where is the problem. Does anyone tried distributed graph class?
Are you also including the graph_parallel library? Boost.Graph.Parallel is not header-only, unlike almost all of the sequential Boost.Graph library.
-- Jeremiah Willcock _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
-- Dipl.-Ing. Ondrej Sluciak Room CG-04-06 Vienna University of Technology, Austria Institute of Communications and Radio-Frequency Engineering Gusshausstrasse 25-29/389 http://www.nt.tuwien.ac.at