I attempted to use the minimal verision of boost test. In order to do this
I replaced
occurencs of
#include
with
#include
This generates a few problems.
a) In the tests which use the serialization DLL, It seems that references
are being made to symbols in the library. Here is the output
from the link. I can't figure out why this is.
test_array.cpp
C:\BoostHead\boost\test\impl\execution_monitor.ipp(204) : warning C4273:
'boost::execution_monitor::execute' : inconsistent dll linkage
C:\BoostHead\boost\test\impl\execution_monitor.ipp(496) : warning C4273:
'boost::execution_monitor::catch_signals' : inconsistent dll linkage
C:\BoostHead\boost\test\impl\execution_monitor.ipp(624) : warning C4273:
'boost::detect_memory_leaks' : inconsistent dll linkage
C:\BoostHead\boost\test\impl\execution_monitor.ipp(646) : warning C4273:
'boost::break_memory_alloc' : inconsistent dll linkage
Linking to lib file: boost_serialization-vc71-mt-gd-1_34.lib
Linking to lib file: boost_serialization-vc71-mt-gd-1_34.lib
Linker output:
Creating library
c:\BoostHead\bin\boost\libs\serialization\test\test_array_binary_archive_dll.test\vc-7_1\debug\threading-multi\test_array_binary_archive_dll.lib
and object
c:\BoostHead\bin\boost\libs\serialization\test\test_array_binary_archive_dll.test\vc-7_1\debug\threading-multi\test_array_binary_archive_dll.exp
test_array.obj : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: __thiscall
boost::execution_exception::execution_exception(enum
boost::execution_exception::error_code,class
boost::unit_test::basic_cstring<char const >)"
(__imp_??0execution_exception@boost@@QAE@W4error_code@01@V?$basic_cstring@$$CBD@unit_test@1@@Z)
referenced in function "void __cdecl boost::detail::report_error(enum
boost::execution_exception::error_code,class
boost::unit_test::basic_cstring<char const >,class
boost::unit_test::basic_cstring<char const >)"
(?report_error@detail@boost@@YAXW4error_code@execution_exception@2@V?$basic_cstring@$$CBD@unit_test@2@1@Z)
test_array.obj : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: class boost::unit_test::basic_cstring<char
const > __thiscall boost::execution_exception::what(void)const "
(__imp_?what@execution_exception@boost@@QBE?AV?$basic_cstring@$$CBD@unit_test@2@XZ)
referenced in function $L159233
test_array.obj : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: enum boost::execution_exception::error_code
__thiscall boost::execution_exception::code(void)const "
(__imp_?code@execution_exception@boost@@QBE?AW4error_code@12@XZ) referenced
in function $L159233
test_array.obj : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: __thiscall
boost::execution_monitor::~execution_monitor(void)"
(__imp_??1execution_monitor@boost@@QAE@XZ) referenced in function _main
test_array.obj : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: __thiscall
boost::execution_monitor::execution_monitor(void)"
(__imp_??0execution_monitor@boost@@QAE@XZ) referenced in function _main
c:\BoostHead\bin\boost\libs\serialization\test\test_array_binary_archive_dll.test\vc-7_1\debug\threading-multi\test_array_binary_archive_dll.exe
: fatal error LNK1120: 5 unresolved externals
b) At least a few "test tools" macros aren't present
BOOST_CHECK_EQUAL and BOOST_CHECK_MESSAGE among themRobert Ramey