我正在尝试在Turtle中编译一个简单的示例(使用boost单元测试框架),并从Turtle中获取编译错误。
我假设Turtle并没有真正的错误,这是我做错了或不相容的事情。
任何帮助都将不胜感激。
示例:
#define BOOST_TEST_MAIN
#define BOOST_TEST_DYN_LINK
#include <boost/test/unit_test.hpp>
#include <turtle/mock.hpp>
BOOST_AUTO_TEST_CASE(trutletest){
BOOST_CHECK(1 == 4);
}
**我已将它提炼出来,因此它甚至不使用任何Turtle功能,只是包含它会导致错误。
我得到的错误:
In file included from ../turtle/include/turtle/detail/../matcher.hpp:14,
from ../turtle/include/turtle/detail/function.hpp:16,
from ../turtle/include/turtle/detail/functor.hpp:12,
from ../turtle/include/turtle/reset.hpp:14,
from ../turtle/include/turtle/mock.hpp:14,
from test.cpp:5:
../turtle/include/turtle/detail/../detail/is_functor.hpp:22: error: expected constructor, destructor, or type conversion before ‘(’ token
In file included from ../turtle/include/turtle/detail/function.hpp:16,
from ../turtle/include/turtle/detail/functor.hpp:12,
from ../turtle/include/turtle/reset.hpp:14,
from ../turtle/include/turtle/mock.hpp:14,
from test.cpp:5:
../turtle/include/turtle/detail/../matcher.hpp:87: error: ‘is_functor’ is not a member of ‘mock::detail’
../turtle/include/turtle/detail/../matcher.hpp:87: error: ‘is_functor’ is not a member of ‘mock::detail’
../turtle/include/turtle/detail/../matcher.hpp:87: error: template argument 1 is invalid
../turtle/include/turtle/detail/../matcher.hpp:88: error: template argument 3 is invalid
../turtle/include/turtle/detail/../matcher.hpp:89: error: expected unqualified-id before ‘>’ token
编译行: g ++ test.cpp -o test -I ../turtle/include/ -lboost_unit_test_framework
我正在使用: g ++(GCC)4.4.6 20120305(Red Hat 4.4.6-4) 龟1.2.4
答案 0 :(得分:1)
正如cv_and_he评论的那样,问题是使用旧的升级版本 更新到最新的提升(1.54.0)解决了问题。