|
Boost Users : |
Subject: [Boost-users] [boost.test] Missing entry point when statically linking to VC2012 but no problem with VC2010
From: Tan, Tom (Shanghai) (TTan_at_[hidden])
Date: 2012-07-03 11:25:20
I have been using a source template for unit test with boost.test, which
used to be working well until I started to use VC2012 RC.
Here's a minimal repo:
#include <boost/test/unit_test.hpp>
using namespace boost::unit_test::framework;
using namespace boost::unit_test;
test_suite* init_unit_test_suite(int argc, char *argv[])
{
BOOST_TEST_MESSAGE("hello test.");
return 0;
}
With the same build options:
cl.exe /EHsc /MT main.cpp
VC2010 compiles fine. VC2012 outputs:
LINK : fatal error LNK1561: entry point must be defined.
Added BOOST_TEST_MAIN caused errors for both compilers.
error C2084: function 'boost::unit_test::test_suite
*init_unit_test_suite(int,char *[])' already has a body
I tested on both 1.49 and 1.50. And the results are the same. I suspect
there is a bug of version check against MSVC but could not locate it.
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net