Eclipse CDT 환경에서 google unit test 를 가져다가 쓰려다 보니 빌드 오류는 해결했어도, Indexer 오류가 장난 아니다.

노랗게 밑줄 쳐 있으니, 엄청 짜증난다. 빌드 경로 다 지정해주고, Index Rebuild 해도 마찬가지 이다.

그러다가, 이것 저것 삽질한 덕분에 깔끔하게 문제를 해결했다.


일단 프로젝트는 New -> C++ Project -> Hello World C++ Project 를 이용해서 생성한다.

그렇지 않으면 google unit test 가 C++ 이기 때문에 무슨 오류를 뱉어낼지 장담 못한다.

기본으로 만들면 Configuration 은 Debug, Release 두개만 존재한다.


여기에 Unit Test 용도로 Test Configuration 을 추가하자.

메뉴의 Project -> Properties -> C/C++ General -> Paths and Symbols 를 선택한다.

Configuration 옆에 Manage Configurations 버튼을 클릭해서 New 버튼을 클릭한다.

Name 에는 Test 로 지정하고, Existing configuration 에는 Debug 환경을 지정하여, 새로운 Configuration 을 만들자.

Configuration 을 Debug 에서 Test 로 바꾸고, Includes -> GNU C++ -> 여기에다가 google unit test 경로를 지정한다.

절대 경로도 좋지만 상대 경로도 괜찮다. ../xxxxx/gtest-1.6.0/include 형태로 지정한다.


메뉴의 Project ->Build Configuration -> Set Active -> Test 로 선택한다.

메뉴의 Project -> Properties 를 선택한다.

기본으로 Test 환경이 활성화 되어 있다.

C/C++ General -> Indexer 로 가보면, 디폴트 설정으로 되어 있다.

Enable project specific settings 를 체크한다.

대부분은 기본 옵션이 좋다.

단지, 맨 마지막에 있는 Use a fixed build configuration 밑에 Debug 로 선택되어 있는 것을 Test 환경으로 바꾸자.


OK 선택해주고, 소스를 빌드하고, 인덱스를 다시 만든다.

Project Explorer 에서 오른쪽 클릭하고 Build Project 하고,

Project Explorer 에서 오른쪽 클릭하고 Index -> Rebuild 를 클릭하면 된다.

자 이제 깨끗한 청정 지역이 되었다. 신나게 테스트를 만들어보자.


참고: 

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

http://codetrips.blogspot.kr/2011/09/cdt-indexer-google-gtest-framework.html


Posted by 집시F