2014년 7월 22일 화요일

boost 1.55 build with Visual Studio 2013

visual studio 2013 에서 boost 1.55 버전 빌드를 하다 보면

serialization 이 빌드가 안되어있는 것을 볼 수 있다.

--with-serialization 으로 serialization 라이브러리만 따로 빌드를 돌려서 출력을 따로 뽑아 보면,

boost_1_55_0\boost/archive/iterators/transform_width.hpp(154) : error C2039: 'min' : is not a member of 'std'

이런식으로 에러가 뜨는 것을 확인할 수 있는데 visual studio 자체적으로 min, max 에 대해서 정의를 하고 있어서다. 이 문제는 std numeric_limits 를 사용할 때도 마주치게 되는데, 이 때는 NOMINMAX 를 전처리 정의에 포함 시켜주면 된다.

boost 빌드의 경우에는 위에 나온 transform_width.hpp 파일을 열고 상단에 #include <algorithm> 을 한 줄 넣어주면 된다.


댓글 없음:

댓글 쓰기