Boost-users
Threads by month
- ----- 2025 -----
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2003 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2002 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2001 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2000 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 1999 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 1998 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 1997 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
June 2012
- 135 participants
- 127 discussions
I use boost trim function and find it perform very well in single-thread
environment.
But when I call trim function in multi-thread environment, it will have a
poor performance.
I also find that it will have a good performance when call it using
multi-process method.
In the end, I write a simple trim function, it perform very well in
multi-thread environment or multi-process environment.
I think I must use it incorrectly in multi-thread environment.
So I want to know what's wrong.
Thanks for any reply.
boost version: boost 1.46.1
os: linux redhat 6.1, 8core, 24G memory.
the blow is sample code
test1.cpp, call trim function in multi-thread environment
//----------------------------
---------------------
using namespace std;
using namespace boost;
void *TrimNString(void *arg) {
string base ="fdsffdsafdsa";
for(int i = 0; i != 50000000;i++)
{
string str = base;
trim(str);
}
return 0;
}
int main()
{
//8 threads to call trim function
system("date");
pthread_t mythread1, mythread2, mythread3, mythread4, mythread5,
mythread6, mythread7,mythread8;
pthread_create(&mythread1, NULL, TrimNString, NULL);
pthread_create(&mythread2, NULL, TrimNString, NULL);
pthread_create(&mythread3, NULL, TrimNString, NULL);
pthread_create(&mythread4, NULL, TrimNString, NULL);
pthread_create(&mythread5, NULL, TrimNString, NULL);
pthread_create(&mythread6, NULL, TrimNString, NULL);
pthread_create(&mythread7, NULL, TrimNString, NULL);
pthread_create(&mythread8, NULL, TrimNString, NULL);
pthread_join(mythread1, NULL);
pthread_join(mythread2, NULL);
pthread_join(mythread3, NULL);
pthread_join(mythread4, NULL);
pthread_join(mythread5, NULL);
pthread_join(mythread6, NULL);
pthread_join(mythread7, NULL);
pthread_join(mythread8, NULL);
system("date");
return 0;
}
test2.cpp, call trim function in multi-process environment
//-------------------------------------------------
/*
* test.cpp
*
* Created on: 2012-6-19
* Author: root
*/
#include<pthread.h>
#include <boost/algorithm/string.hpp>
#include <string>
#include <vector>
#include <cstdlib>
#include <iostream>
using namespace std;
using namespace boost;
void *TrimNString(void *arg) {
system("./TrimNString");// TrimNString is produced by test3.cpp
return 0;
}
int main()
{
//8 process to call trim function
system("date");
pthread_t mythread1, mythread2, mythread3, mythread4, mythread5,
mythread6, mythread7,mythread8;
pthread_create(&mythread1, NULL, TrimNString, NULL);
pthread_create(&mythread2, NULL, TrimNString, NULL);
pthread_create(&mythread3, NULL, TrimNString, NULL);
pthread_create(&mythread4, NULL, TrimNString, NULL);
pthread_create(&mythread5, NULL, TrimNString, NULL);
pthread_create(&mythread6, NULL, TrimNString, NULL);
pthread_create(&mythread7, NULL, TrimNString, NULL);
pthread_create(&mythread8, NULL, TrimNString, NULL);
pthread_join(mythread1, NULL);
pthread_join(mythread2, NULL);
pthread_join(mythread3, NULL);
pthread_join(mythread4, NULL);
pthread_join(mythread5, NULL);
pthread_join(mythread6, NULL);
pthread_join(mythread7, NULL);
pthread_join(mythread8, NULL);
system("date");
return 0;
}
test3.cpp, the executable file for test2.cpp
/*
* test.cpp
*
* Created on: 2012-6-19
* Author: root
*/
#include<pthread.h>
#include <boost/algorithm/string.hpp>
#include <string>
#include <vector>
#include <cstdlib>
#include <iostream>
using namespace std;
using namespace boost;
//produce the executable file
int main()
{
string base ="fdsffdsafdsa";
for(int i = 0; i != 50000000;i++)
{
string str = base;
trim(str);
}
return 0;
}
test4.cpp, call a simple trim(not boost library) function in multi-thread
environment, it has similary performance like multi-process calling.
//-------------------------------------------------
#include<pthread.h>
#include <boost/algorithm/string.hpp>
#include <string>
#include <vector>
#include <cstdlib>
#include <iostream>
using namespace std;
using namespace boost;
void ltrim(string & str)
{
if(str.find_first_not_of(" \n\r\t") != string::npos)
{
str = str.substr(str.find_first_not_of(" \n\r\t"));
}
}
void rtrim(string & str)
{
if(str.find_first_not_of(" \n\r\t") != string::npos)
{
str = str.substr(0, str.find_last_not_of(" \n\r\t") + 1);
}
}
void trimStr(string &str)
{
ltrim(str);
rtrim(str);
}
void *TrimNString(void *arg) {
string base ="fdsffdsafdsa";
for(int i = 0; i != 50000000;i++)
{
string str = base;
trimStr(str);
}
return 0;
}
int main()
{
//8 threads to call trim function
system("date");
pthread_t mythread1, mythread2, mythread3, mythread4, mythread5,
mythread6, mythread7,mythread8;
pthread_create(&mythread1, NULL, TrimNString, NULL);
pthread_create(&mythread2, NULL, TrimNString, NULL);
pthread_create(&mythread3, NULL, TrimNString, NULL);
pthread_create(&mythread4, NULL, TrimNString, NULL);
pthread_create(&mythread5, NULL, TrimNString, NULL);
pthread_create(&mythread6, NULL, TrimNString, NULL);
pthread_create(&mythread7, NULL, TrimNString, NULL);
pthread_create(&mythread8, NULL, TrimNString, NULL);
pthread_join(mythread1, NULL);
pthread_join(mythread2, NULL);
pthread_join(mythread3, NULL);
pthread_join(mythread4, NULL);
pthread_join(mythread5, NULL);
pthread_join(mythread6, NULL);
pthread_join(mythread7, NULL);
pthread_join(mythread8, NULL);
system("date");
return 0;
}
3
2
Hi,
I have a test case throwing a custom exception with a quite long error
description.
Because Boost.Test truncates it when translating the exception to a
boost::execution_exception internally, only (about) 512 characters are
being displayed.
I suppose I could install a custom exception translator to perform the
logging, then rethrow a boost::execution_aborted.
However I don't see any way to access the last checkpoint data which are
encapsulated and can only be logged by processing a
boost::execution_exception within
boost::unit_test::unit_test_log_t::exception_caught
Is there anything obvious I have missed which could help me work around
this issue ?
Otherwise would this be a valuable feature request for the UTF ?
Thank you,
Mathieu
1
0
Hello,
I compiled MPI and Grpah-parallel library with OpenMPI v1.6 and
boost1.490 on VS2010.
When I compiling a Grpah-parallel application occurs some errors:
Error 114 error LNK2019: unresolved external symbol _MPI_Waitall,referenced
in function "public: class boost::mpi::status __thiscall
boost::mpi::request::wait(void)" (?wait@request@mpi@boost@@QAE?AVstatus@23@XZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-
1_49.lib(request.obj) BOOST02
Error 98 error LNK2019: unresolved external symbol _MPI_Wait,referenced in
function "private: static class boost::optional<class boost::mpi::status>
__cdecl boost::mpi::request::handle_serialized_irecv<class
boost::mpi::packed_iarchive>(class boost::mpi::request *,enum
boost::mpi::request::request_action)"
(??$handle_serialized_irecv@Vpacked_iarchive@mpi@boost@@@request@mpi@boost@
@CA?AV?
$optional@Vstatus@mpi@boost@@@2@PAV012@W4request_action@012@@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 52 error LNK2019: unresolved external symbol _MPI_Unpack,referenced
in function "private: void __thiscall
boost::mpi::packed_iprimitive::load_impl(void *,struct ompi_datatype_t
*,int)" (?load_impl@packed_iprimitive@mpi@boost@@AAEXPAXPAUompi_datatype_t@
@H@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 58 error LNK2019: unresolved external symbol
_MPI_Type_struct,referenced in function "public: struct ompi_datatype_t *
__thiscall
boost::mpi::detail::mpi_datatype_primitive::get_mpi_datatype(void)"
(?get_mpi_datatype@mpi_datatype_primitive@detail@mpi@boost@
@QAEPAUompi_datatype_t@@XZ) 中
被引用 D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 103 error LNK2019: unresolved external symbol
_MPI_Type_free,referenced in function "public: void __thiscall
boost::mpi::detail::mpi_datatype_map::clear(void)" (?clear@mpi_datatype_map
@detail@mpi@boost@@QAEXXZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi
-vc100-mt-gd-1_49.lib(mpi_datatype_cache.obj) BOOST02
Error 28 error LNK2019: unresolved external symbol
_MPI_Type_contiguous,referenced in function "struct ompi_datatype_t *
__cdecl
boost::mpi::detail::build_mpi_datatype_for_bool(void)"
(?build_mpi_datatype_for_bool@detail@mpi@boost@@YAPAUompi_datatype_t@@XZ)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 27 error LNK2019: unresolved external symbol
_MPI_Type_commit,referenced in function "struct ompi_datatype_t * __cdecl
boost::mpi::detail::build_mpi_datatype_for_bool(void)"
(?build_mpi_datatype_for_bool@detail@mpi@boost@@YAPAUompi_datatype_t@@XZ)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 95 error LNK2019: unresolved external symbol
_MPI_Topo_test,referenced in function "public: class boost::optional<class
boost::mpi::graph_communicator> __thiscall
boost::mpi::communicator::as_graph_communicator(void)const "
(?as_graph_communicator@communicator@mpi@boost@@QBE?
AV?$optional@Vgraph_communicator@mpi@boost@@@3@XZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(communicator.obj)
BOOST02
Error 115 error LNK2019: unresolved external symbol _MPI_Testall,referenced
in function "public: class boost::optional<class boost::mpi::status>
__thiscall boost::mpi::request::test(void)" (?test@request@mpi@boost
@@QAE?AV?$optional@Vstatus@mpi@boost@@@3@XZ)
D:\Resources\Programing\BOOST02
\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(request.obj) BOOST02
Error 79 error LNK2019: unresolved external symbol
_MPI_Test_cancelled,referenced in function "public: bool __thiscall
boost::mpi::status::cancelled(void)const "
(?cancelled@status@mpi@boost@@QBE_NXZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-
1_49.lib(communicator.obj) BOOST02
Error 33 error LNK2019: unresolved external symbol _MPI_Test,referenced in
function "void __cdecl boost::graph::distributed::send_oob<struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct
boost::directed_tag,unsigned int> > > >(class
boost::graph::distributed::mpi_process_group const &,int,int,struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct
boost::directed_tag,unsigned int> > > const &,int)" (??$send_oob@U
?$untracked_pair@HU?$edge_descriptor@V?
$edge_desc_impl@Udirected_tag@boost@@I@detail@boost@@@parallel@detail@boost@
@@detail@parallel@boost@@@distributed@graph@boost@
@YAXABVmpi_process_group@012@HH
ABU?$untracked_pair@HU?$edge_descriptor@V?$edge_desc_impl@Udirected_tag
@boost@@I@detail@boost@@@parallel@detail@boost@@@detail@parallel@2@H@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 88 error LNK2019: unresolved external symbol _MPI_Send,referenced in
function "public: void __thiscall boost::mpi::communicator::send
(int,int)const " (?send@communicator@mpi@boost@@QBEXHH@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(communicator.obj)
BOOST02
Error 49 error LNK2019: unresolved external symbol _MPI_Recv,referenced in
function "void __cdecl
boost::graph::distributed::detail::do_oob_receive<struct
boost::parallel::detail::untracked_pair<struct
boost::detail::parallel::global_descriptor<unsigned
int>,int> >(class boost::graph::distributed::mpi_process_group const
&,int,int,struct boost::parallel::detail::untracked_pair<struct
boost::detail::parallel::global_descriptor<unsigned int>,int> &,struct
boost::mpl::bool_<1>)" (??$do_oob_receive@U?$untracked_pair@U?
$global_descriptor@I@parallel@detail@boost@@H@detail@parallel@boost
@@@detail@distributed@graph@boost@@YAXABVmpi_process_group@123
@HHAAU?$untracked_pair@U?
$global_descriptor@I@parallel@detail@boost@@H@0parallel@3@U?$bool_@$00@mpl
@3@@Z) D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 91 error LNK2019: unresolved external symbol _MPI_Probe,referenced in
function "public: class boost::mpi::status __thiscall
boost::mpi::communicator::probe(int,int)const " (?probe@communicator
@mpi@boost@@QBE?AVstatus@23@HH@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi
-vc100-mt-gd-1_49.lib(communicator.obj) BOOST02
Error 22 error LNK2019: unresolved external symbol
_MPI_Pack_size,referenced in function "private: void __thiscall
boost::mpi::packed_oprimitive::save_impl(void const *,struct
ompi_datatype_t *,int)" (?save_impl@packed_oprimitive@mpi@boost
@@AAEXPBXPAUompi_datatype_t@@H@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 21 error LNK2019: unresolved external symbol _MPI_Pack,referenced in
function "private: void __thiscall
boost::mpi::packed_oprimitive::save_impl(void const *,struct
ompi_datatype_t *,int)" (?save_impl@packed_oprimitive@mpi@boost
@@AAEXPBXPAUompi_datatype_t@@H@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 48 error LNK2019: unresolved external symbol _MPI_Op_free,referenced
in function "public: __thiscall boost::mpi::detail::user_op<struct
boost::parallel::maximum<int>,int>::~user_op<struct
boost::parallel::maximum<int>,int>(void)" (??1?$user_op@U?
$maximum@H@parallel@boost@@H@detail@mpi@boost@@QAE@XZ)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 47 error LNK2019: unresolved external symbol
_MPI_Op_create,referenced in function "public: __thiscall
boost::mpi::detail::user_op<struct
boost::parallel::maximum<int>,int>::user_op<struct
boost::parallel::maximum<int>,int>(struct boost::parallel::maximum<int> &)"
(??0?$user_op@U?
$maximum@H@parallel@boost@@H@detail@mpi@boost@@QAE@AAU?$maximum@H@parallel@3@@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 37 error LNK2019: unresolved external symbol _MPI_Isend,referenced in
function "void __cdecl boost::graph::distributed::send_oob<struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct
boost::directed_tag,unsigned int> > > >(class
boost::graph::distributed::mpi_process_group const &,int,int,struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct
boost::directed_tag,unsigned int> > > const &,int)" (??$send_oob@U
?$untracked_pair@HU?$edge_descriptor@V?
$edge_desc_impl@Udirected_tag@boost@@I@detail@boost@@@parallel@detail@boost@
@@detail@parallel@boost@@@distributed@graph@boost@
@YAXABVmpi_process_group@012@HH
ABU?$untracked_pair@HU?$edge_descriptor@V?$edge_desc_impl@Udirected_tag
@boost@@I@detail@boost@@@parallel@detail@boost@@@detail@parallel@2@H@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 43 error LNK2019: unresolved external symbol _MPI_Irecv,referenced in
function "void __cdecl boost::graph::distributed::receive_oob<int>(class
boost::graph::distributed::mpi_process_group const &,int,int,int &,int)"
(??$receive_oob@H@distributed@graph@boost@@YAXABVmpi_process_group@012
@HHAAHH@Z) 中
被引用 D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 90 error LNK2019: unresolved external symbol _MPI_Iprobe,referenced
in function "public: class boost::optional<class boost::mpi::status>
__thiscall boost::mpi::communicator::iprobe(int,int)const "
(?iprobe@communicator@mpi@boost@@QBE?AV?$optional@Vstatus@mpi@boost@@@3@HH@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(communicator.obj)
BOOST02
Error 72 error LNK2019: unresolved external symbol
_MPI_Initialized,referenced in function "public: static bool __cdecl
boost::mpi::environment::initialized(void)" (?initialized@environment
@mpi@boost@@SA_NXZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-
mt-gd-1_49.lib(environment.obj) BOOST02
Error 68 error LNK2019: unresolved external symbol _MPI_Init,referenced in
function "public: __thiscall boost::mpi::environment::environment(bool)"
(??0environment@mpi@boost@@QAE@_N@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(environment.obj)
BOOST02
Error 107 error LNK2019: unresolved external symbol
_MPI_Group_union,referenced in function "class boost::mpi::group __cdecl
boost::mpi::operator|
(class boost::mpi::group const &,class boost::mpi::group const &)"
(??Umpi@boost@@YA?AVgroup@01@ABV201@0@Z)
D:\Resources\Programing\BOOST02\BOOST02
\libboost_mpi-vc100-mt-gd-1_49.lib(group.obj) BOOST02
Error 110 error LNK2019: unresolved external symbol
_MPI_Group_translate_ranks,referenced in function "public: int *
__thiscall
boost::mpi::group::translate_ranks<int *,int *>(int *,int *,class
boost::mpi::group const &,int *)" (??
$translate_ranks@PAHPAH@group@mpi@boost@@QAEPAHPAH0ABV012@0@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(group.obj)
BOOST02
Error 105 error LNK2019: unresolved external symbol
_MPI_Group_size,referenced in function "public: int __thiscall
boost::mpi::group::size(void)const
" (?size@group@mpi@boost@@QBEHXZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(group.obj)
BOOST02
Error 104 error LNK2019: unresolved external symbol
_MPI_Group_rank,referenced in function "public: class boost::optional<int>
__thiscall
boost::mpi::group::rank(void)const " (?rank@group@mpi@boost
@@QBE?AV?$optional@H@3@XZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-
1_49.lib(group.obj) BOOST02
Error 108 error LNK2019: unresolved external symbol
_MPI_Group_intersection,referenced in function "class boost::mpi::group
__cdecl
boost::mpi::operator&(class boost::mpi::group const &,class
boost::mpi::group const &)" (??Impi@boost@@YA?AVgroup@01@ABV201@0@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(group.obj)
BOOST02
Error 111 error LNK2019: unresolved external symbol
_MPI_Group_incl,referenced in function "public: class boost::mpi::group
__thiscall
boost::mpi::group::include<int *>(int *,int *)" (??$include@PAH@group@mpi
@boost@@QAE?AV012@PAH0@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi
-vc100-mt-gd-1_49.lib(group.obj) BOOST02
Error 113 error LNK2019: unresolved external symbol
_MPI_Group_free,referenced in function "public: void __thiscall
boost::mpi::group::group_free::operator()(struct ompi_group_t * *)const "
(??Rgroup_free@group@mpi@boost@@QBEXPAPAUompi_group_t@@@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(group.obj)
BOOST02
Error 112 error LNK2019: unresolved external symbol
_MPI_Group_excl,referenced in function "public: class boost::mpi::group
__thiscall
boost::mpi::group::exclude<int *>(int *,int *)" (??$exclude@PAH@group@mpi
@boost@@QAE?AV012@PAH0@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi
-vc100-mt-gd-1_49.lib(group.obj) BOOST02
Error 109 error LNK2019: unresolved external symbol
_MPI_Group_difference,referenced in function "class boost::mpi::group
__cdecl
boost::mpi::operator-(class boost::mpi::group const &,class
boost::mpi::group const &)" (??Gmpi@boost@@YA?AVgroup@01@ABV201@0@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(group.obj)
BOOST02
Error 106 error LNK2019: unresolved external symbol
_MPI_Group_compare,referenced in function "bool __cdecl
boost::mpi::operator==(class
boost::mpi::group const &,class boost::mpi::group const &)" (??8mpi@boost
@@YA_NABVgroup@01@0@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi
-vc100-mt-gd-1_49.lib(group.obj) BOOST02
Error 78 error LNK2019: unresolved external symbol
_MPI_Get_processor_name,referenced in function "public: static class
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > __cdecl
boost::mpi::environment::processor_name(void)" (?
processor_name@environment@mpi@boost@@SA?AV?$basic_string@DU?$char_traits@D
@std@@V?$allocator@D@2@@std@@XZ) D:\Resources\Programing\BOOST02\BOOST02
\libboost_mpi-vc100-mt-gd-1_49.lib(environment.obj) BOOST02
Error 61 error LNK2019: unresolved external symbol
_MPI_Get_count,referenced in function "private: class boost::optional<int>
__thiscall
boost::mpi::status::count_impl<struct boost::mpi::packed>(struct
boost::mpl::bool_<1>)const " (??$count_impl@Upacked@mpi@boost@@@status@mpi
@boost@@ABE?AV?
$optional@H@2@U?$bool_@$00@mpl@2@@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 11 error LNK2019: unresolved external symbol _MPI_Free_mem,referenced
in function "public: void __thiscall
boost::mpi::allocator<char>::deallocate(char *,unsigned int)" (?deallocate@
?$allocator@D@mpi@boost@@QAEXPADI@Z) D:\Resources\Programing\BOOST02
\BOOST02\BOOST02.obj BOOST02
Error 73 error LNK2019: unresolved external symbol
_MPI_Finalized,referenced in function "public: static bool __cdecl
boost::mpi::environment::finalized(void)"
(?finalized@environment@mpi@boost@@SA_NXZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-
1_49.lib(environment.obj) BOOST02
Error 69 error LNK2019: unresolved external symbol _MPI_Finalize,referenced
in function "public: __thiscall boost::mpi::environment::~environment
(void)" (??1environment@mpi@boost@@QAE@XZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(environment.obj)
BOOST02
Error 102 error LNK2019: unresolved external symbol
_MPI_Error_string,referenced in function "public: __thiscall
boost::mpi::exception::exception
(char const *,int)" (??0exception@mpi@boost@@QAE@PBDH@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(exception.obj)
BOOST02
Error 62 error LNK2019: unresolved external symbol
_MPI_Errhandler_set,referenced in function "public: __thiscall
boost::mpi::environment::environment(bool)" (??0environment@mpi@boost@@QAE@
_N@Z) D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-
1_49.lib(environment.obj) BOOST02
Error 94 error LNK2019: unresolved external symbol
_MPI_Comm_test_inter,referenced in function "public: class
boost::optional<class
boost::mpi::intercommunicator> __thiscall
boost::mpi::communicator::as_intercommunicator(void)const "
(?as_intercommunicator@communicator@mpi@boost@@QBE?AV?
$optional@Vintercommunicator@mpi@boost@@@3@XZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(communicator.obj)
BOOST02
Error 93 error LNK2019: unresolved external symbol
_MPI_Comm_split,referenced in function "public: class
boost::mpi::communicator __thiscall
boost::mpi::communicator::split(int,int)const " (?split@communicator
@mpi@boost@@QBE?AV123@HH@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi
-vc100-mt-gd-1_49.lib(communicator.obj) BOOST02
Error 85 error LNK2019: unresolved external symbol
_MPI_Comm_size,referenced in function "public: int __thiscall
boost::mpi::communicator::size
(void)const " (?size@communicator@mpi@boost@@QBEHXZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(communicator.obj)
BOOST02
Error 86 error LNK2019: unresolved external symbol
_MPI_Comm_rank,referenced in function "public: int __thiscall
boost::mpi::communicator::rank
(void)const " (?rank@communicator@mpi@boost@@QBEHXZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(communicator.obj)
BOOST02
Error 87 error LNK2019: unresolved external symbol
_MPI_Comm_group,referenced in function "public: class boost::mpi::group
__thiscall
boost::mpi::communicator::group(void)const " (?group@communicator@mpi@boost
@@QBE?AV023@XZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-
mt-gd-1_49.lib(communicator.obj) BOOST02
Error 97 error LNK2019: unresolved external symbol
_MPI_Comm_free,referenced in function "public: void __thiscall
boost::mpi::communicator::comm_free::operator()(struct ompi_communicator_t
* *)const " (??
Rcomm_free@communicator@mpi@boost@@QBEXPAPAUompi_communicator_t@@@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 80 error LNK2019: unresolved external symbol _MPI_Comm_dup,referenced
in function "public: __thiscall boost::mpi::communicator::communicator
(struct ompi_communicator_t * const &,enum boost::mpi::comm_create_kind)"
(??0communicator@mpi@boost@@QAE@ABQAUompi_communicator_t
@@W4comm_create_kind@12@@Z)
中被引用
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(communicator.obj)
BOOST02
Error 82 error LNK2019: unresolved external symbol
_MPI_Comm_create,referenced in function "public: __thiscall
boost::mpi::communicator::communicator(class boost::mpi::communicator const
&,class boost::mpi::group const &)" (??
0communicator@mpi@boost@@QAE@ABV012@ABVgroup@12@@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(communicator.obj)
BOOST02
Error 96 error LNK2019: unresolved external symbol
_MPI_Comm_compare,referenced in function "bool __cdecl
boost::mpi::operator==(class
boost::mpi::communicator const &,class boost::mpi::communicator const &)"
(??8mpi@boost@@YA_NABVcommunicator@01@0@Z) D:\Resources\Programing\BOOST02
\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(communicator.obj) BOOST02
Error 116 error LNK2019: unresolved external symbol _MPI_Cancel,referenced
in function "public: void __thiscall boost::mpi::request::cancel(void)"
(?cancel@request@mpi@boost@@QAEXXZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(request.obj)
BOOST02
Error 40 error LNK2019: unresolved external symbol _MPI_Bsend,referenced in
function "void __cdecl boost::graph::distributed::send_oob<struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct
boost::directed_tag,unsigned int> > > >(class
boost::graph::distributed::mpi_process_group const &,int,int,struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct
boost::directed_tag,unsigned int> > > const &,int)" (??$send_oob@U
?$untracked_pair@HU?$edge_descriptor@V?
$edge_desc_impl@Udirected_tag@boost@@I@detail@boost@@@parallel@detail@boost@
@@detail@parallel@boost@@@distributed@graph@boost@
@YAXABVmpi_process_group@012@HH
ABU?$untracked_pair@HU?$edge_descriptor@V?$edge_desc_impl@Udirected_tag
@boost@@I@detail@boost@@@parallel@detail@boost@@@detail@parallel@2@H@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 92 error LNK2019: unresolved external symbol _MPI_Barrier,referenced
in function "public: void __thiscall boost::mpi::communicator::barrier
(void)const " (?barrier@communicator@mpi@boost@@QBEXXZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(communicator.obj)
BOOST02
Error 77 error LNK2019: unresolved external symbol _MPI_Attr_get,referenced
in function "public: static int __cdecl
boost::mpi::environment::max_tag(void)" (?max_tag@environment@mpi@boost@@SAHXZ)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-
1_49.lib(environment.obj) BOOST02
Error 46 error LNK2019: unresolved external symbol
_MPI_Allreduce,referenced in function "void __cdecl
boost::mpi::detail::all_reduce_impl<int,struct
boost::parallel::maximum<int> >(class boost::mpi::communicator const &,int
const *,int,int *,struct
boost::parallel::maximum<int>,struct boost::mpl::bool_<0>,struct
boost::mpl::bool_<1>)" (??$all_reduce_impl@HU?
$maximum@H@parallel@boost@@@detail@mpi@boost@@YAXABVcommunicator@12
@PBHHPAHU?$maximum@H@parallel@2@U?$bool_@$0A@@mpl@2@U?$bool_@$00@72@@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 14 error LNK2019: unresolved external symbol
_MPI_Alloc_mem,referenced in function "public: struct
std::_Container_proxy * __thiscall
boost::mpi::allocator<struct std::_Container_proxy>::allocate(unsigned
int,void const *)" (?allocate@?
$allocator@U_Container_proxy@std@@@mpi@boost@@QAEPAU_Container_proxy@std
@@IPBX@Z) D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 60 error LNK2019: unresolved external symbol _MPI_Address,referenced
in function "public: __thiscall
boost::mpi::detail::mpi_datatype_primitive::mpi_datatype_primitive(void
const *)" (??0mpi_datatype_primitive@detail@mpi@boost@@QAE@PBX@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 70 error LNK2019: unresolved external symbol _MPI_Abort,referenced in
function "public: static void __cdecl boost::mpi::environment::abort
(int)" (?abort@environment@mpi@boost@@SAXH@Z)
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib(environment.obj)
BOOST02
Error 3 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::listS,struct
boost::distributedS<class
boost::graph::distributed::mpi_process_group,struct
boost::vecS,struct boost::defaultS>,struct boost::directedS,struct
boost::property<enum boost::vertex_distance_t,int,struct
boost::no_property>,struct
boost::property<enum boost::edge_weight_t,int,struct
boost::no_property>,struct boost::no_property,struct
boost::listS>::~adjacency_list<struct
boost::listS,struct boost::distributedS<class
boost::graph::distributed::mpi_process_group,struct boost::vecS,struct
boost::defaultS>,struct
boost::directedS,struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,struct
boost::property<enum
boost::edge_weight_t,int,struct boost::no_property>,struct
boost::no_property,struct boost::listS>(void)" (??1?$adjacency_list@UlistS
@boost@@U?
$distributedS@Vmpi_process_group@distributed@graph@boost@@UvecS@4
@UdefaultS@4@@2@UdirectedS@2@U?$property@W4vertex_distance_t@boost@
@HUno_property@2@@2@U?
$property@W4edge_weight_t@boost@@HUno_property@2@@2@Uno_property@2@U12
@@boost@@QAE@XZ) D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj
BOOST02
Error 8 error LNK2019: unresolved external symbol "public: void __thiscall
boost::graph::distributed::mpi_process_group::replace_on_synchronize_handler(class
boost::function0<void> const &)" (?
replace_on_synchronize_handler@mpi_process_group@distributed@graph@boost@
@QAEXABV?$function0@X@4@@Z),referenced in function "public: void
__thiscall
boost::parallel::distributed_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned int>,class
boost::iterator_property_map<class std::_Vector_iterator<class
std::_Vector_val<int,class std::allocator<int> > >,struct
boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct
boost::no_property>,unsigned int>,int,int &> >::set_consistency_model(int)"
(?set_consistency_model@?
$distributed_property_map@Vmpi_process_group@distributed@graph@boost@
@U?$global_descriptor_property_map@I@parallel@detail@4@V
?$iterator_property_map@V?
$_Vector_iterator@V?$_Vector_val@HV?$allocator@H@std@@@std@@@std@
@U?$vec_adj_list_vertex_id_map@U?
$property@W4vertex_distance_t@boost@@HUno_property@2@@boost@@I@boost@@HAAH@4
@@parallel@boost@@QAEXH@Z) D:\Resources\Programing\BOOST02\BOOST02
\BOOST02.obj BOOST02
Error 4 error LNK2019: unresolved external symbol "public: void __thiscall
boost::graph::distributed::mpi_process_group::replace_handler(class
boost::function<void __cdecl(int,int)> const &,bool)"
(?replace_handler@mpi_process_group@distributed@graph@boost@
@QAEXABV?$function@$$A6AXHH@Z@4@_N@Z),该符
号在函数 "public: __thiscall boost::parallel::distributed_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned int>,class
boost::iterator_property_map<class std::_Vector_iterator<class
std::_Vector_val<int,class std::allocator<int> > >,struct
boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct
boost::no_property>,unsigned int>,int,int &>
>::distributed_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned int>,class
boost::iterator_property_map<class std::_Vector_iterator<class
std::_Vector_val<int,class std::allocator<int> > >,struct
boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct
boost::no_property>,unsigned int>,int,int &> >(class
boost::graph::distributed::mpi_process_group const &,struct
boost::detail::parallel::global_descriptor_property_map<unsigned int> const
&,class boost::iterator_property_map<class std::_Vector_iterator<class
std::_Vector_val<int,class std::allocator<int> > >,struct
boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct
boost::no_property>,unsigned int>,int,int &> const &)"
(??0?$distributed_property_map@Vmpi_process_group@distributed@graph@boost@
@U?
$global_descriptor_property_map@I@parallel@detail@4@V
?$iterator_property_map@V?$_Vector_iterator@V?$_Vector_val@HV?$allocator@H
@std@@@std@@@std@@U?
$vec_adj_list_vertex_id_map@U?
$property@W4vertex_distance_t@boost@@HUno_property@2@@boost@@I@boost@@HAAH@4
@@parallel@boost@@QAE@ABVmpi_process_group@distributed@graph@2@ABU?
$global_descriptor_property_map@I@1detail@2@ABV?$iterator_property_map@V
?$_Vector_iterator@V?$_Vector_val@HV?$allocator@H@std@@@std@@@std@@U?
$vec_adj_list_vertex_id_map@U?$property@W4vertex_distance_t@boost@
@HUno_property@2@@boost@@I@boost@@HAAH@2@@Z)
D:\Resources\Programing\BOOST02
\BOOST02\BOOST02.obj BOOST02
Error 42 error LNK2019: unresolved external symbol "public: struct
std::pair<class boost::mpi::communicator,int> __thiscall
boost::graph::distributed::mpi_process_group::actual_communicator_and_tag(int,int)const
" (?
actual_communicator_and_tag@mpi_process_group@distributed@graph@boost@
@QBE?AU?$pair@Vcommunicator@mpi@boost@@H@std@@HH@Z),referenced in function
"void
__cdecl boost::graph::distributed::send_oob<struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct boost::directed_tag,unsigned int> > >
>(class boost::graph::distributed::mpi_process_group const &,int,int,struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct
boost::directed_tag,unsigned int> > > const &,int)" (??$send_oob@U
?$untracked_pair@HU?$edge_descriptor@V?
$edge_desc_impl@Udirected_tag@boost@@I@detail@boost@@@parallel@detail@boost@
@@detail@parallel@boost@@@distributed@graph@boost@
@YAXABVmpi_process_group@012@HH
ABU?$untracked_pair@HU?$edge_descriptor@V?$edge_desc_impl@Udirected_tag
@boost@@I@detail@boost@@@parallel@detail@boost@@@detail@parallel@2@H@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 41 error LNK2019: unresolved external symbol "public: static unsigned
int __cdecl
boost::graph::distributed::mpi_process_group::message_buffer_size(void)"
(?message_buffer_size@mpi_process_group@distributed@graph@boost@
@SAIXZ),referenced
in function "void __cdecl boost::graph::distributed::send_oob<struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct boost::directed_tag,unsigned int> > >
>(class
boost::graph::distributed::mpi_process_group const &,int,int,struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct boost::directed_tag,unsigned int> > >
const &,int)" (??$send_oob@U?
$untracked_pair@HU?$edge_descriptor@V?
$edge_desc_impl@Udirected_tag@boost@@I@detail@boost@@@parallel@detail@boost@
@@detail@parallel@boost@@@distributed@graph@boost@
@YAXABVmpi_process_group@012@HH
ABU?$untracked_pair@HU?$edge_descriptor@V?$edge_desc_impl@Udirected_tag
@boost@@I@detail@boost@@@parallel@detail@boost@@@detail@parallel@2@H@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 36 error LNK2019: unresolved external symbol "public: class
boost::optional<struct std::pair<int,int> > __thiscall
boost::graph::distributed::mpi_process_group::poll(bool,int,bool)const "
(?poll@mpi_process_group@distributed@graph@boost@@QBE?AV?$optional@U?
$pair@HH@std@@@4@_NH0@Z),referenced in function "void __cdecl
boost::graph::distributed::send_oob<struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct boost::directed_tag,unsigned int> > >
>(class
boost::graph::distributed::mpi_process_group const &,int,int,struct
boost::parallel::detail::untracked_pair<int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct boost::directed_tag,unsigned int> > >
const &,int)" (??$send_oob@U?
$untracked_pair@HU?$edge_descriptor@V?
$edge_desc_impl@Udirected_tag@boost@@I@detail@boost@@@parallel@detail@boost@
@@detail@parallel@boost@@@distributed@graph@boost@
@YAXABVmpi_process_group@012@HH
ABU?$untracked_pair@HU?$edge_descriptor@V?$edge_desc_impl@Udirected_tag
@boost@@I@detail@boost@@@parallel@detail@boost@@@detail@parallel@2@H@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 6 error LNK2019: unresolved external symbol "public: class
boost::graph::distributed::mpi_process_group __thiscall
boost::graph::distributed::mpi_process_group::base(void)const "
(?base@mpi_process_group@distributed@graph@boost@@QBE?AV1234@XZ),referenced
in function
"public: class boost::graph::distributed::mpi_process_group __thiscall
boost::adjacency_list<struct boost::listS,struct boost::distributedS<class
boost::graph::distributed::mpi_process_group,struct boost::vecS,struct
boost::defaultS>,struct boost::directedS,struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,struct
boost::property<enum boost::edge_weight_t,int,struct
boost::no_property>,struct
boost::no_property,struct boost::listS>::process_group(void)const "
(?process_group@?$adjacency_list@UlistS@boost@@U?
$distributedS@Vmpi_process_group@distributed@graph@boost@@UvecS@4
@UdefaultS@4@@2@UdirectedS@2@U?$property@W4vertex_distance_t@boost@
@HUno_property@2@@2@U?
$property@W4edge_weight_t@boost@@HUno_property@2@@2@Uno_property@2@U12
@@boost@@QBE?AVmpi_process_group@distributed@graph@2@XZ)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 32 error LNK2019: unresolved external symbol "public: class
boost::graph::distributed::detail::tag_allocator::token __thiscall
boost::graph::distributed::detail::tag_allocator::get_tag(void)"
(?get_tag@tag_allocator@detail@distributed@graph@boost@@QAE?AVtoken@12345@XZ),referenced
in
function "void __cdecl
boost::graph::distributed::send_oob_with_reply<struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct boost::directed_tag,unsigned int>
>,int>(class boost::graph::distributed::mpi_process_group const
&,int,int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct boost::directed_tag,unsigned int> >
const &,int &,int)" (??
$send_oob_with_reply@U?$edge_descriptor@V?
$edge_desc_impl@Udirected_tag@boost@@I@detail@boost@@@parallel@detail@boost@
@H@distributed@graph@boost@@YAXABVmpi_process_group@012@HHABU?
$edge_descriptor@V?$edge_desc_impl@Udirected_tag@boost@@I@detail@boost@
@@parallel@detail@2@AAHH@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj
BOOST02
Error 2 error LNK2019: unresolved external symbol "public: __thiscall
boost::graph::distributed::mpi_process_group::mpi_process_group(class
boost::mpi::communicator)" (??0mpi_process_group@distributed@graph@boost
@@QAE@Vcommunicator@mpi@3@@Z),referenced in function "void __cdecl
test_crauser_dijkstra(class std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >,int,int)"
(?test_crauser_dijkstra@@YAXV?
$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HH@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 5 error LNK2019: unresolved external symbol "public: __thiscall
boost::graph::distributed::mpi_process_group::mpi_process_group(class
boost::graph::distributed::mpi_process_group const &,struct
boost::graph::parallel::attach_distributed_object,bool)" (??
0mpi_process_group@distributed@graph@boost@@QAE@ABV0123
@Uattach_distributed_object@parallel@23@_N@Z),referenced in function
"public: __thiscall
boost::adjacency_list<struct boost::listS,struct boost::distributedS<class
boost::graph::distributed::mpi_process_group,struct boost::vecS,struct
boost::defaultS>,struct boost::directedS,struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,struct
boost::property<enum
boost::edge_weight_t,int,struct boost::no_property>,struct
boost::no_property,struct boost::listS>::adjacency_list<struct
boost::listS,struct
boost::distributedS<class
boost::graph::distributed::mpi_process_group,struct boost::vecS,struct
boost::defaultS>,struct boost::directedS,struct
boost::property<enum boost::vertex_distance_t,int,struct
boost::no_property>,struct boost::property<enum
boost::edge_weight_t,int,struct
boost::no_property>,struct boost::no_property,struct boost::listS><class
boost::graph::metis_reader::edge_iterator,class
boost::graph::metis_reader::edge_weight_iterator>(class
boost::graph::metis_reader::edge_iterator,class
boost::graph::metis_reader::edge_iterator,class
boost::graph::metis_reader::edge_weight_iterator,unsigned int,class
boost::graph::distributed::mpi_process_group const &,struct
boost::no_property const &)"
(??$?0Vedge_iterator@metis_reader@graph@boost@@Vedge_weight_iterator@123
@@?$adjacency_list@UlistS@boost@@U?
$distributedS@Vmpi_process_group@distributed@graph@boost@@UvecS@4
@UdefaultS@4@@2@UdirectedS@2@U?$property@W4vertex_distance_t@boost@
@HUno_property@2@@2@U?
$property@W4edge_weight_t@boost@@HUno_property@2@@2@Uno_property@2@U12
@@boost@@QAE@Vedge_iterator@metis_reader@graph@1@0Vedge_weight_iterator
@341@IABVmpi_pro
cess_group@distributed@41@ABUno_property@1@@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 7 error LNK2019: unresolved external symbol "public: __thiscall
boost::graph::distributed::mpi_process_group::mpi_process_group(class
boost::graph::distributed::mpi_process_group const &,class
boost::function<void __cdecl(int,int)> const &,bool)" (??
0mpi_process_group@distributed@graph@boost@@QAE@ABV0123@ABV?$function@
$$A6AXHH@Z@3@_N@Z),referenced in function "protected: __thiscall
boost::graph::detail::remote_update_set<class
boost::graph::distributed::detail::crauser_et_al_dijkstra_queue<class
boost::adjacency_list<struct
boost::listS,struct boost::distributedS<class
boost::graph::distributed::mpi_process_group,struct boost::vecS,struct
boost::defaultS>,struct
boost::directedS,struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,struct
boost::property<enum
boost::edge_weight_t,int,struct boost::no_property>,struct
boost::no_property,struct boost::listS>,struct
boost::closed_plus<int>,struct std::less<int>,class
boost::local_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned
int>,struct boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,unsigned int>
>,class
boost::iterator_property_map<class std::_Vector_iterator<class
std::_Vector_val<int,class std::allocator<int> > >,class
boost::local_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned
int>,struct
boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,unsigned int>
>,int,int &>,class
boost::dummy_property_map,class boost::iterator_property_map<int *,class
boost::local_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned
int>,struct boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,unsigned int>
>,int,int &>,class boost::iterator_property_map<int *,class
boost::local_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned
int>,struct boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,unsigned int>
>,int,int &>
>,class boost::graph::distributed::mpi_process_group,int,struct
boost::detail::parallel::owner_property_map<unsigned int>,struct
boost::graph::detail::remote_set_queued>::remote_update_set<class
boost::graph::distributed::detail::crauser_et_al_dijkstra_queue<class
boost::adjacency_list<struct boost::listS,struct boost::distributedS<class
boost::graph::distributed::mpi_process_group,struct boost::vecS,struct
boost::defaultS>,struct boost::directedS,struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,struct
boost::property<enum
boost::edge_weight_t,int,struct boost::no_property>,struct
boost::no_property,struct boost::listS>,struct
boost::closed_plus<int>,struct std::less<int>,class
boost::local_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned
int>,struct boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,unsigned int>
>,class
boost::iterator_property_map<class std::_Vector_iterator<class
std::_Vector_val<int,class std::allocator<int> > >,class
boost::local_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned
int>,struct
boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,unsigned int>
>,int,int &>,class
boost::dummy_property_map,class boost::iterator_property_map<int *,class
boost::local_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned
int>,struct boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,unsigned int>
>,int,int &>,class boost::iterator_property_map<int *,class
boost::local_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned
int>,struct boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct boost::no_property>,unsigned int>
>,int,int &>
>,class boost::graph::distributed::mpi_process_group,int,struct
boost::detail::parallel::owner_property_map<unsigned int>,struct
boost::graph::detail::remote_set_queued>(class
boost::graph::distributed::mpi_process_group const &,struct
boost::detail::parallel::owner_property_map<unsigned int> const &)"
(??0?$remote_update_set@V?$crauser_et_al_dijkstra_queue@V?
$adjacency_list@UlistS@boost@@U?$distributedS@Vmpi_process_group
@distributed@graph@boost@@UvecS@4@UdefaultS@4@@2@UdirectedS@2@U?
$property@W4vertex_distance_t@boost@@HUno_property@2@@2@U
?$property@W4edge_weight_t@boost@@HUno_property@2@@2@Uno_property@2@U12
@@boost@@U?
$closed_plus@H@2@U?$less@H@std@@V?$local_property_map@Vmpi_process_group
@distributed@graph@boost@@U?$global_descriptor_property_map@I
@parallel@detail@4@U?
$vec_adj_list_vertex_id_map@U?$property@W4vertex_distance_t@boost@
@HUno_property@2@@boost@@I@4@@2@V?$iterator_property_map@V
?$_Vector_iterator@V?
$_Vector_val@HV?$allocator@H@std@@@std@@@std@
@V?$local_property_map@Vmpi_process_group@distributed@graph@boost@@U?
$global_descriptor_property_map@I@parallel@detail@4@U
?$vec_adj_list_vertex_id_map@U?
$property@W4vertex_distance_t@boost@@HUno_property@2@@boost@@I@4@@boost@
@HAAH@2@Vdummy_property_map@2@V?$iterator_property_map@PAHV?
$local_property_map@Vmpi_process_group@distributed@graph@boost@
@U?$global_descriptor_property_map@I@parallel@detail@4@U
?$vec_adj_list_vertex_id_map@U?
$property@W4vertex_distance_t@boost@@HUno_property@2@@boost@@I@4@@boost@
@HAAH@2@V92@@detail@distributed@graph@boost@@Vmpi_process_group@345@HU?
$owner_property_map@I@parallel@25@Uremote_set_queued@245@@detail@graph
@boost@@IAE@ABVmpi_process_group@distributed@23@ABU?
$owner_property_map@I@parallel@13@@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 1 error LNK2019: unresolved external symbol "public: __thiscall
boost::graph::distributed::mpi_process_group::~mpi_process_group(void)" (??
1mpi_process_group@distributed@graph@boost@@QAE@XZ),referenced in function
"void __cdecl test_crauser_dijkstra(class std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >,int,int)"
(?test_crauser_dijkstra@@YAXV?$basic_string@DU?$char_traits@D@std@
@V?$allocator@D@2@@std@@HH@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 31 error LNK2019: unresolved external symbol "public: __thiscall
boost::graph::distributed::detail::tag_allocator::token::~token(void)" (??
1token@tag_allocator@detail@distributed@graph@boost@@QAE@XZ),referenced in
function "void __cdecl
boost::graph::distributed::send_oob_with_reply<struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct boost::directed_tag,unsigned int>
>,int>
(classboost::graph::distributed::mpi_process_group const &,int,int,struct
boost::detail::parallel::edge_descriptor<class
boost::detail::edge_desc_impl<struct
boost::directed_tag,unsigned int> > const &,int &,int)"
(??$send_oob_with_reply@U?$edge_descriptor@V?
$edge_desc_impl@Udirected_tag@boost@@I@detail@boost@@@parallel@detail@boost@
@H@distributed@graph@boost@@YAXABVmpi_process_group@012@HHABU?
$edge_descriptor@V?$edge_desc_impl@Udirected_tag@boost@@I@detail@boost@
@@parallel@detail@2@AAHH@Z)
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj
BOOST02
Error 10 error LNK2019: unresolved external symbol "private: void
__thiscall
boost::graph::distributed::mpi_process_group::maybe_send_batch(int)const
" (?maybe_send_batch@mpi_process_group@distributed@graph@boost@@ABEXH@Z),referenced
in function "public: void __thiscall
boost::graph::distributed::mpi_process_group::send_impl<class
std::vector<struct boost::parallel::detail::untracked_pair<struct
boost::detail::parallel::global_descriptor<unsigned int>,int>,class
std::allocator<struct boost::parallel::detail::untracked_pair<struct
boost::detail::parallel::global_descriptor<unsigned int>,int> > >
>(int,int,class std::vector<struct
boost::parallel::detail::untracked_pair<struct
boost::detail::parallel::global_descriptor<unsigned int>,int>,class
std::allocator<struct boost::parallel::detail::untracked_pair<struct
boost::detail::parallel::global_descriptor<unsigned int>,int> > > const
&,struct boost::mpl::bool_<0>)const " (??$send_impl@V?$vector@U
?$untracked_pair@U?
$global_descriptor@I@parallel@detail@boost@@H@detail@parallel@boost
@@V?$allocator@U?$untracked_pair@U?
$global_descriptor@I@parallel@detail@boost@@H@detail@parallel@boost@@@std@
@@std@@@mpi_process_group@distributed@graph@boost@@QBEXHHABV?$vector@U?
$untracked_pair@U?$global_descriptor@I@parallel@detail@boost@@H@detail
@parallel@boost@@V?$allocator@U?$untracked_pair@U?
$global_descriptor@I@parallel@detail@boost@@H@detail@parallel@boost@@@std@
@@std@@U?$bool_@$0A@@mpl@3@@Z) D:\Resources\Programing\BOOST02\BOOST02
\BOOST02.obj BOOST02
Error 30 error LNK2019: unresolved external symbol "private: void
__thiscall boost::graph::distributed::mpi_process_group::install_trigger
(int,int,class boost::shared_ptr<class
boost::graph::distributed::mpi_process_group::trigger_base> const &)" (?
install_trigger@mpi_process_group@distributed@graph@boost@
@AAEXHHABV?$shared_ptr@Vtrigger_base@mpi_process_group@distributed
@graph@boost@@@4@@Z),该符号在函
数 "public: void __thiscall
boost::graph::distributed::mpi_process_group::trigger<struct
boost::parallel::detail::untracked_pair<struct
boost::detail::parallel::global_descriptor<unsigned int>,int>,class
boost::graph::parallel::detail::simple_trigger_t<struct
boost::parallel::distributed_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned int>,class
boost::iterator_property_map<class std::_Vector_iterator<class
std::_Vector_val<int,class std::allocator<int> > >,struct
boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct
boost::no_property>,unsigned int>,int,int &> >::handle_message<struct
boost::parallel::basic_reduce<int> >,struct
boost::parallel::detail::untracked_pair<struct
boost::detail::parallel::global_descriptor<unsigned int>,int>,void>
>(int,class
boost::graph::parallel::detail::simple_trigger_t<struct
boost::parallel::distributed_property_map<class
boost::graph::distributed::mpi_process_group,struct
boost::detail::parallel::global_descriptor_property_map<unsigned int>,class
boost::iterator_property_map<class std::_Vector_iterator<class
std::_Vector_val<int,class std::allocator<int> > >,struct
boost::vec_adj_list_vertex_id_map<struct boost::property<enum
boost::vertex_distance_t,int,struct
boost::no_property>,unsigned int>,int,int &> >::handle_message<struct
boost::parallel::basic_reduce<int> >,struct
boost::parallel::detail::untracked_pair<struct
boost::detail::parallel::global_descriptor<unsigned int>,int>,void> const
&)" (??$trigger@U?
$untracked_pair@U?$global_descriptor@I@parallel@detail@boost@@H@detail
@parallel@boost@@V?$simple_trigger_t@U?$handle_message@U?
$basic_reduce@H@parallel@boost
@@@?$distributed_property_map@Vmpi_process_group@distributed@graph@boost@@U?
$global_descriptor_property_map@I@parallel@detail@4@V
?$iterator_property_map@V?$_Vector_iterator@V?$_Vector_val@HV?$allocator@H
@std@@@std@@@std@@U?
$vec_adj_list_vertex_id_map@U?$property@W4vertex_distance_t@boost@
@HUno_property@2@@boost@@I@boost@@HAAH@4@@parallel@boost
@@U?$untracked_pair@U?
$global_descriptor@I@parallel@detail@boost@@H@detail@34@X@23graph@4
@@mpi_process_group@distributed@graph@boost@@QAEXHABV?$simple_trigger_t@U?
$handle_message@U?$basic_reduce@H@parallel@boost
@@@?$distributed_property_map@Vmpi_process_group@distributed@graph@boost@@U?
$global_descriptor_property_map@I@parallel@detail@4@V
?$iterator_property_map@V?$_Vector_iterator@V?$_Vector_val@HV?$allocator@H
@std@@@std@@@std@@U?
$vec_adj_list_vertex_id_map@U?$property@W4vertex_distance_t@boost@
@HUno_property@2@@boost@@I@boost@@HAAH@4@@parallel@boost
@@U?$untracked_pair@U?
$global_descriptor@I@parallel@detail@boost@@H@detail@34@X@detail@parallel
@23@@Z) D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 9 error LNK2019: unresolved external symbol "class
boost::mpi::communicator __cdecl
boost::graph::distributed::communicator(class
boost::graph::distributed::mpi_process_group const &)"
(?communicator@distributed@graph@boost@@YA?AV0mpi@3@ABVmpi_process_group@123@@Z),referenced
in
function "int * __cdecl boost::graph::distributed::all_reduce<int,struct
boost::parallel::maximum<int> >(class
boost::graph::distributed::mpi_process_group
const &,int *,int *,int *,struct boost::parallel::maximum<int>)"
(??$all_reduce@HU?
$maximum@H@parallel@boost@@@distributed@graph@boost@
@YAPAHABVmpi_process_group@012@PAH11U?$maximum@H@parallel@2@@Z)
D:\Resources\Programing\BOOST02
\BOOST02\BOOST02.obj BOOST02
Error 100 error LNK2001: unresolved external symbol _ompi_request_null
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 101 error LNK2001: unresolved external symbol _ompi_request_null
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(request.obj) BOOST02
Error 20 error LNK2001: unresolved external symbol _ompi_mpi_unsigned_char
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 23 error LNK2001: unresolved external symbol _ompi_mpi_unsigned
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 24 error LNK2001: unresolved external symbol _ompi_mpi_unsigned
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 25 error LNK2001: unresolved external symbol _ompi_mpi_unsigned
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(point_to_point.obj) BOOST02
Error 26 error LNK2001: unresolved external symbol _ompi_mpi_short
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 53 error LNK2001: unresolved external symbol _ompi_mpi_packed
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 54 error LNK2001: unresolved external symbol _ompi_mpi_packed
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 55 error LNK2001: unresolved external symbol _ompi_mpi_packed
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(point_to_point.obj) BOOST02
Error 45 error LNK2001: unresolved external symbol _ompi_mpi_int
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 17 error LNK2001: unresolved external symbol _ompi_mpi_info_null
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 18 error LNK2001: unresolved external symbol _ompi_mpi_info_null
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 19 error LNK2001: unresolved external symbol _ompi_mpi_info_null
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(point_to_point.obj) BOOST02
Error 83 error LNK2001: unresolved external symbol _ompi_mpi_group_empty
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 84 error LNK2001: unresolved external symbol _ompi_mpi_group_empty
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(group.obj) BOOST02
Error 66 error LNK2001: unresolved external symbol _ompi_mpi_errors_return
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-
1_49.lib(environment.obj) BOOST02
Error 67 error LNK2001: unresolved external symbol _ompi_mpi_errors_return
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-
1_49.lib(communicator.obj) BOOST02
Error 56 error LNK2001: unresolved external symbol _ompi_mpi_datatype_null
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 57 error LNK2001: unresolved external symbol _ompi_mpi_datatype_null
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-
1_49.lib(mpi_datatype_cache.obj) BOOST02
Error 64 error LNK2001: unresolved external symbol _ompi_mpi_comm_world
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(environment.obj) BOOST02
Error 65 error LNK2001: unresolved external symbol _ompi_mpi_comm_world
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 81 error LNK2001: unresolved external symbol _ompi_mpi_comm_null
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 59 error LNK2001: unresolved external symbol _ompi_mpi_char
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 29 error LNK2001: unresolved external symbol _ompi_mpi_byte
D:\Resources\Programing\BOOST02\BOOST02\BOOST02.obj BOOST02
Error 99 error LNK2001: unresolved external symbol _MPI_Wait
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(request.obj) BOOST02
Error 34 error LNK2001: unresolved external symbol _MPI_Test
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 35 error LNK2001: unresolved external symbol _MPI_Test
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(request.obj) BOOST02
Error 89 error LNK2001: unresolved external symbol _MPI_Send
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(point_to_point.obj) BOOST02
Error 50 error LNK2001: unresolved external symbol _MPI_Recv
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 51 error LNK2001: unresolved external symbol _MPI_Recv
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(point_to_point.obj) BOOST02
Error 38 error LNK2001: unresolved external symbol _MPI_Isend
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 39 error LNK2001: unresolved external symbol _MPI_Isend
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(point_to_point.obj) BOOST02
Error 44 error LNK2001: unresolved external symbol _MPI_Irecv
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 12 error LNK2001: unresolved external symbol _MPI_Free_mem
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 13 error LNK2001: unresolved external symbol _MPI_Free_mem
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(point_to_point.obj) BOOST02
Error 74 error LNK2001: unresolved external symbol _MPI_Finalized
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 75 error LNK2001: unresolved external symbol _MPI_Finalized
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(mpi_datatype_cache.obj) BOOST02
Error 76 error LNK2001: unresolved external symbol _MPI_Finalized
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(group.obj) BOOST02
Error 63 error LNK2001: unresolved external symbol _MPI_Errhandler_set
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 15 error LNK2001: unresolved external symbol _MPI_Alloc_mem
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 16 error LNK2001: unresolved external symbol _MPI_Alloc_mem
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(point_to_point.obj) BOOST02
Error 71 error LNK2001: unresolved external symbol _MPI_Abort
D:\Resources\Programing\BOOST02\BOOST02\libboost_mpi-vc100-mt-gd-1_49.lib
(communicator.obj) BOOST02
Error 117 error LNK1120: 87 unresolved external commands
D:\Resources\Programing\BOOST02\Debug\BOOST02.exe BOOST02
what is wrong? I use Visual Studio 2010. Thanks a lot.
2
5
I have a Visual Studio 2008 C++03 application where I'm using
boost::phoenix::erase (v1.49.0) on a std::list<int> container that does not
contain the element I want to erase.
This example is demonstrates the issue:
int main()
{
namespace bp = boost::phoenix;
namespace bpa = boost::phoenix::arg_names;
std::list< int > a;
// works as expected (does nothing)
a.erase( a.end(), a.end() );
// fails a debug assertion "list erase iterator outside range"
// Microsoft Visual Studio 9.0\VC\include\list\list : 790
bp::erase( bp::ref( a ), a.end() )();
return 0;
}
In release mode, this de-references an uninitialized pointer and the
application crashes. Am I using boost::phoenix::erase correctly?
Thanks
2
2
Dear list,
I have been using boost.iostreams to read gzipped files for some time, but
recently have run into some problems with files that are compressed using
tools other than gzip (namely bgzip from
http://samtools.svn.sourceforge.net/viewvc/samtools/trunk/samtools/)
Here is the file:
$ hexdump -C ../hello.txt.bgz
00000000 1f 8b 08 04 00 00 00 00 00 ff 06 00 42 43 02 00
|............BC..|
00000010 35 00 f3 48 cd c9 c9 d7 51 28 c9 c8 2c 56 00 a2
|5..H....Q(..,V..|
00000020 44 85 92 d4 e2 12 85 b4 cc 9c 54 3d 2e 00 86 1e
|D.........T=....|
00000030 ef a4 1c 00 00 00 1f 8b 08 04 00 00 00 00 00 ff
|................|
00000040 06 00 42 43 02 00 1b 00 03 00 00 00 00 00 00 00
|..BC............|
00000050 00 00 |..|
00000052
I think this is valid gzip format (based on reading
http://www.gzip.org/zlib/rfc-gzip.html) It differs from what you get by
compressing the file using the gzip program in two respects: 1. it uses the
'extra' flag (FLG.EXTRA) to add extra data to each block header, and 2. it
has two blocks, the second of which is empty.
My file reading code is as follows:
/* test.cpp */
#include <iostream>
#include <boost/iostreams/filtering_stream.hpp>
#include <boost/iostreams/filter/gzip.hpp>
#include <boost/iostreams/copy.hpp>
#include <boost/iostreams/device/file.hpp>
int main( int, char** ) {
boost::iostreams::filtering_istream stream ;
stream.push( boost::iostreams::gzip_decompressor() ) ;
boost::iostreams::file_source file( argv[1] ) ;
stream.push( file ) ;
boost::iostreams::copy( stream, std::cout ) ;
}
I am using boost 1.48.0 on Ubuntu linux. The compilation is
$ g++ -o test -g test.cpp -L /home/gav/Projects/Software/usr/lib
-lboost_iostreams-gcc46-mt-1_48 -I /home/gav/Projects/Software/boost_1_48_0
Using gunzip on the above file works fine:
$ gunzip -c ../hello.txt.bgz
Hello, this is a test file.
Using the test program does not:
$ ./test ../hello.txt.bgz
terminate called after throwing an instance of
'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::iostreams::gzip_error>
>'
what(): gzip error
I was able to fix this problem with two code changes in the boost.iostreams
implementation, as follows.
*Change #1*: at libs/iostreams/src/gzip.cpp:65: change "state_ = s_extra;"
to "state_ = s_xlen;"
Rationale: without this change, it looks like state s_xlen is never entered
so the length of the extra data is not parsed. *Update:* I notice this
change was already raised in ticket #5908, and has already been fixed in
trunk.
*
*
*Change #2*: at libs/iostreams/src/zlib.cpp:153: change "crc_imp_ = 0;" to
"crc_ = crc_imp_ = 0;"
Rationale: without this change, an empty block of data does not
re-initialise the member variable crc_ of zlib_base. This causes an
exception on line 447 of boost/iostreams/filter/gzip.hpp.
I confirmed this behaviour a second way, by concatenating two files
compressed using gzip, the first nonempty and the second empty. This
creates a file which looks like this:
$ hexdump -C hello2.txt.gz
00000000 1f 8b 08 00 0d ea b4 4f 00 03 cb 48 cd c9 c9 57
|.......O...H...W|
00000010 28 c9 48 2d 4a e5 02 00 8e 45 d1 59 0c 00 00 00
|(.H-J....E.Y....|
00000020 1f 8b 08 00 18 ea b4 4f 00 03 03 00 00 00 00 00
|.......O........|
00000030 00 00 00 00 |....|
00000034
This file again decompresses with gunzip but not with the program above.
Change #2 above fixes this.
Could someone take a look at this and let me know if this change is really
appropriate? (Or perhaps I'm doing something wrong.) I can create a bug
report if desired.
Many thanks,
Gavin Band.
2
2
==============================================
Review Wizard Status Report for June 2012
==============================================
News
====
1. Predef Library Reviewed
2. Boost 1.49.0 Released. New Library: Heaps
3. Multiprecision Arithmetic Review Ongoing
Open Issues
===========
The following libraries have been reviewed and await reports from their
review managers:
* Predef - reviewed February 2012; review manager: Joel Falcou.
* Conversion - reviewed August 2011; review manager: Gordon Woodhull.
The following libraries have been accepted to Boost, but have not yet
been submitted to SVN:
* Constrained Value - accepted September 2010; author: Robert Kawulak.
* GIL.IO - accepted January 2011; author: Christian Henning.
* Atomic - accepted July 2011; author Helge Bahmann.
* Lockfree - accepted August 2011; author: Tim Blechmann.
The following libraries have been accepted and submitted to SVN, but
have not yet appeared in a release:
* Type Traits Introspection - accepted August 2011; author: Edward Diener.
* Context - accepted January 2012; author: Oliver Kowalke.
The following libraries have been accepted provisionally to Boost, but
have not been submitted for mini-review and full acceptance:
* Endian - accepted provisionally November 2011; author: Beman Dawes.
* Log - accepted provisionally March 2010; author: Andrey Semashev.
General Announcements
=====================
As always, we need experienced review managers. Please take a look at
the list of libraries in need of managers and check out their
descriptions. In general review managers are active boost
participants, including library contributors, infrastructure
contributors, and other mailing list participants with a substantial
track record of constructive participation. If you can serve as review
manager for any of them, email Ron Garcia or John Phillips, "rxg at cs
dot cmu dot edu" and "phillips at pacific dot mps dot ohio-state dot
edu" respectively.
We are also suffering from a lack of reviewers. While we all
understand time pressures and the need to complete paying work, the
strength of Boost is based on the detailed and informed reviews
submitted by you. If you are interested in reviewing a library but
won't have time during the review period, you can always prepare your
review ahead of time. No rule says you can only work on a review
during the review period.
A link to this report will be posted to www.boost.org. If you would
like us to make any modifications or additions to this report before
we do that, please email Ron or John.
The review schedule is an unordered list of the libraries awaiting
review. As such, any library on the schedule can be reviewed once the
developer is ready, a review manager has been secured, and
the manager, developer, and wizards agree on a date
to schedule the review.
Review Schedule
===============
* Join (M)
* Pimpl (M)
* Sorting (M)
* Quaternions, Vectors, Matrices (M)
* Variadic Macro Data (M)
* Block Pointer (M)
* Singularity (M)
* Extended Complex Numbers (M)
* Metaparse (M)
* Polygon: Voronoi Extensions
* Coroutine
* Type Erasure
* Range Extensions (M)
* Contract
* Nowide (M)
``(M)`` marks libraries that need review managers.
--------------------
Join
----
:Author: Yigong Liu
:Review Manager: Needed
:Download: http://channel.sourceforge.net/
:Description:
Join is an asynchronous, message based C++ concurrency
library based on join calculus. It is applicable both to
multi-threaded applications and to the orchestration of asynchronous,
event-based applications. It follows Comega's design and
implementation and builds with Boost facilities. It provides a high
level concurrency API with asynchronous methods, synchronous methods,
and chords which are "join-patterns" defining the synchronization,
asynchrony, and concurrency.
Pimpl
-----
:Author: Vladimir Batov
:Review Manager: Needed
:Download: https://github.com/boost-vault/Miscellaneous/blob/master/Pimpl.zip
:Description:
The Pimpl idiom is a simple yet robust technique to minimize
coupling via the separation of interface and implementation and then
implementation hiding. This library provides a convenient yet
flexible and generic deployment technique for the Pimpl idiom. It's
seemingly complete and broadly applicable, yet minimal, simple and
pleasant to use.
Sorting
-------
:Author: Steven Ross
:Review Manager: Needed
:Download: https://github.com/boost-vault/Sorting
:Description:
A grouping of 3 templated hybrid radix/comparison-based sorting
algorithms that provide superior worst-case and average-case
performance to std::sort: integer_sort, which sorts fixed-size data
types that support a rightshift (default of >>) and a comparison
(default of <) operator. float_sort, which sorts standard
floating-point numbers by safely casting them to integers.
string_sort, which sorts variable-length data types, and is optimized
for 8-bit character strings.
All 3 algorithms have O(n(k/s + s)) runtime where k is the number of
bits in the data type and s is a constant, and limited memory overhead
(in the kB for realistic inputs). In testing, integer_sort varies
from 35% faster to 2X as fast as std::sort, depending on processor,
compiler optimizations, and data distribution. float_sort is roughly
70% faster than std::sort. string_sort is roughly 2X
as fast as std::sort.
Quaternions, Vectors, Matrices
------------------------------
:Author: Emil Dotchevski
:Review Manager: Needed
:Download: http://www.revergestudios.com/boost-qvm/
:Description:
QVM defines a set of generic functions and operator overloads for
working with quaternions, vectors and matrices of static size. The
library also defines vector and matrix data types, however it allows
users to introduce their own types by specializing the q_traits,
v_traits and m_traits templates.
Variadic Macro Data
-------------------
:Author: Edward Diener
:Review Manager: Needed
:Download: `Boost Sandbox <http://svn.boost.org/svn/boost/sandbox/variadic_macro_data/>`__
:Description:
This library adds support and functionality for variadic macros to
Boost as well as integrating variadic macros with the Boost PP
library without changing the latter library in any way.
Block Pointer
-------------
:Author: Phil Bouchard
:Review Manager: Needed
:Download: https://svn.boost.org/svn/boost/sandbox/block_ptr/
:Description:
Deterministic memory manager of constant complexity capable of
handling cyclic collections.
Singularity
-----------
:Author: Ben Robinson
:Review Manager: Needed
:Download: https://github.com/icaretaker/Singularity
:Description: The Singularity Design Pattern allows you to restrict
any class to a single instance. Unlike the infamous Singleton,
Singularity gives you direct control over the lifetime of the object,
does not require you to grant global access to the object, nor does it
limit you to the default constructor for that object.
Extended Complex Numbers
------------------------
:Author: Matthieu Schaller
:Review Manager: Needed
:Download: http://code.google.com/p/cpp-imaginary-numbers/
:Description:
The library is an extension of the std::complex class addressing two issues:
1. The standard does not guaranty the behaviour of the complex class if
instantiated with types other than float/double/long double.
2. Some calculation where pure imaginary numbers (i.e. multiples of
sqrt(-1)) appear are unnecessarily slowed down due to the lack of
support for these numbers. The code I submit contains two
interleaved classes boost::complex and boost::imaginary which can
be instantiated with any type T provided T overloads the usual
arithmetic operators and some basic (real) mathematical functions
depending on which complex function will be used. It is thus an
extended version of Thorsten Ottosen's n1869 proposal
(http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2005/n1869.html)
Metaparse
---------
:Author: Abel Sinkovics
:Review Manager: Needed
:Download: http://abel.web.elte.hu/metaparse/metaparse.zip
:Description:
Metaparse is a library for constructing parsers parsing at
compile-time based on template metaprogramming. The parsers built with
the library take boost::mpl::strings as input and can produce
- types
- objects (types with public static members)
- callable C++ functions (types with public static method)
- template metafunction classes
as output (based on the input being parsed).
On compilers supporting constexpr the library provides the following
syntactic sugar for writing the input of the parsers:
BOOST_STRING("this is a string")
The library can be used for implementing DSLs in C++, including DSLs
making C++ template metaprogramming easier (see examples).
Polygon: Voronoi Extensions
---------------------------
:Author: Andril Sydorchuk
:Review Manager: Lucanus Simonson
:Download: http://svn.boost.org/svn/boost/sandbox/gtl/
:Description:
This library extends Boost.Polygon with the following features:
- Robust and efficient implementation of the sweepline algorithm that
allows to construct Voronoi diagram, Delaunay triangulation and medial axis
of a set of points and line segments.
- Coordinates of the output geometries are computed within the 64 machine
epsilon relative error (6 mantissa bits).
- Voronoi diagram data structure that allows efficient traversal and data
association with the output Voronoi graph.
- No 3rd party dependencies (e.g. GMP, MPFR), all the required multiple
precision types are implemented as part of the library.
- The input and output coordinate type domains are configurable via
coordinate type traits, thus allowing to compute coordinates of the Voronoi
vertices within any required precision.
- The full construction of the Voronoi diagram of 100 000 points takes only
0.27 seconds (see benchmarks).
Coroutine
---------
:Author: Oliver Kowalke
:Review Manager: Hartmut Kaiser
:Download: http://gitorious.org/boost-dev/boost-dev/archive-tarball/coroutine
:Description:
This library is an implementation of coroutines and generators using
Boost.Context.
Type Erasure
------------
:Author: Steven Watanabe
:Review Manager: Lorenzo Caminiti
:Download: http://sourceforge.net/projects/steven-watanabe.u/files/
:Description:
The TypeErasure library is a generalization of boost::any and
boost::function. It allows easy composition of arbitrary type erased
operators.
Range Extensions
----------------
:Author: Akira Takahashi
:Review Manager: Neil Groves
:Download: https://github.com/faithandbrave/OvenToBoost
:Description:
This project adds some features of the Oven Range Library to Boost.Range.
Features:
- Additional Range Adaptors (taken, taken_while, dropped,
dropped_while, elements, elements_key, memoized, outdirected)
- Extensions for using Lambda (regular function, regular operator)
- Infinite Range (iteration function)
- and additional range utilities.
Contract
--------
:Author: Lorenzo Caminiti
:Review Manager: Dave Abrahams
:Download: http://sourceforge.net/projects/contractpp/files/latest/download
:Description:
This library implements Contract Programming for the C++ programming
language (see the end of this email). In addition, the library
implements virtual specifiers (final, override, and new, see C++11),
concept checking, and named parameters.
This library is implemented for the C++03 standard and it does not
require C++11.
Nowide
------
:Author: Artyom Beilis
:Review Manager: Needed
:Download: http://cppcms.com/files/nowide/
:Description:
This library makes cross platform Unicode aware programming easier.
It provides an implementation of standard C and C++ library functions,
such that their inputs are UTF-8 aware on Windows without requiring to
use Wide API.
Libraries under development
===========================
See http://svn.boost.org/trac/boost/wiki/LibrariesUnderConstruction
for a current listing of libraries under development.
1
0
Is there any way to use shared_memory_object as a class member ?
regards
Achuth
2
1
2
1

[boost] [review] Multiprecision review (June 8th - 17th, 2012)
by Jeffrey Lee Hellrung, Jr. 16 Jun '12
by Jeffrey Lee Hellrung, Jr. 16 Jun '12
16 Jun '12
Okay, it's that time. Apologies for not sending a reminder, but there had
been a lot of pre-review comments over the last week or so, so I think this
has been on at least some people's radar. The original review announcement
is given below.
On Tue, May 29, 2012 at 2:08 PM, Jeffrey Lee Hellrung, Jr. <
jeffrey.hellrung(a)gmail.com> wrote:
> Hi all,
>
> The review of the proposed Boost.Multiprecision library authored by John
> Maddock and Christopher Kormanyos has been scheduled for
>
> June 8th - June 17th, 2012
>
> and will be managed by myself.
>
> From the Introduction:
>
> --------
> "The Multiprecision Library provides *User-defined* integer, rational and
> floating-point C++ types which try to emulate as closely as practicable the
> C++ built-in types, but provide for more range and precision. Depending
> upon the number type, precision may be arbitrarily large (limited only by
> available memory), fixed at compile time values, for example 50 decimal
> digits, or a variable controlled at run-time by member functions. The types
> are expression-template-enabled for better performance than naive
> user-defined types."
> --------
>
> And from the original formal review request from John:
>
> --------
> Features:
>
> * Expression template enabled front end.
> * Support for Integer, Rational and Floating Point types.
>
> Supported Integer backends:
>
> * GMP.
> * Libtommath.
> * cpp_int.
>
> cpp_int is an all C++ Boost licensed backend, supports both arbitrary
> precision types (with Allocator support), and signed and unsigned fixed
> precision types (with no memory allocation).
>
> There are also some integer specific functions - for Miller Rabin testing,
> bit fiddling, random numbers. Plus interoperability with Boost.Rational
> (though that loses the expression template frontend).
>
> Supported Rational Backends:
>
> * GMP
> * libtommath
> * cpp_int (as above)
>
> Supported Floating point backends:
>
> * GMP
> * MPFR
> * cpp_dec_float
>
> cpp_dec_float is an all C++ Boost licensed type, adapted from Christopher
> Kormanyos' e_float code (published in TOMS last year).
>
> All the floating point types, have full std lib support (cos sin exp, pow
> etc), as well as full interoperability with Boost.Math.
>
> There's nothing in principal to prevent extension to complex numbers and
> interval arithmetic types (plus any other number types I've forgotten!),
> but I've run out of energy for now ;-)
>
> Code is in the sandbox under /big_number/.
>
> Docs can be viewed online here:
> http://svn.boost.org/svn/boost/sandbox/big_number/libs/multiprecision/doc/h…
> --------
>
Any review discussion should take place on the developers' list (
boost(a)lists.boost.org) and anyone may submit a formal review, either
publicly to the entire list or privately to just myself.
As usual, please consider the following questions in your formal review:
What is your evaluation of the design?
What is your evaluation of the implementation?
What is your evaluation of the documentation?
What is your evaluation of the potential usefulness of the library?
Did you try to use the library? With what compiler? Did you have any
problems?
How much effort did you put into your evaluation? A glance? A quick
reading? In-depth study?
Are you knowledgeable about the problem domain?
And, most importantly, please explicitly answer the following question:
Do you think the library should be accepted as a Boost library?
Lastly, please consider that John and Christopher have compiled a TODO list
[1] based on pre-review comments. Feel free to comment on the priority and
necessity of such TODO items, and whether any might be show-stoppers or
warrant conditional acceptance of the library.
Thanks in advance; looking forward to the discussion!
- Jeff (& John & Christopher)
[1]
http://svn.boost.org/svn/boost/sandbox/big_number/libs/multiprecision/doc/h…
2
1