본문 바로가기

C..C++....

visual studio 2012에서 gtest 컴파일시 std::touple 에러 해결방법..

vc11에서 google test나 google protocol 등... google 프로젝트등을 빌드하면 
std::tuple 등의 에러가 나게 되는데
그에따른 해결방법은.

stdafx.h의 윗부분에다가
#define _VARIADIC_MAX 10
을 써주거나..

프로젝트 -> 속성 -> C/C++ / 전처리기 -> 전처리기 정의에다가 _VARIADIC_MAX=10; 을 써주면 된다..


vc에서 사용중이 tuple이 표준안에 안맞아서 생기는거라고 하는데...

2012 RC에서도 생기던 문제라 fix가 되어야 하는데 아직까지 안되고 있는듯...


vs 2012(vc 11) 에 들어와서 기존에 tr1에 있던 tuple를 std에 포함시키면서

tuple의 템플릿 갯수를 기본 5개(vc10과 boost는 10개)로 줄이면서 생긴 문제라고 한다... 

google 


관련 내용 링크..

http://code.google.com/p/googletest/issues/detail?id=412