|
|
|
[공지1] 영문 블로그를 옮겼습니다. 주소는 http://codeguru.textcube.com 입니다. 새로운 내용을 올리진 않고, 당분간 이곳에 올린 내용들을 영어로 옮기는 작업을 할 것 같습니다. 제 영문 블로그도 많이 응원해 주세요~
[공지2] 최근 네이버에서 공개한 나눔고딕 글꼴을 적용했습니다. 나눔고딕이 없으신 분은 맑은 고딕, 윤디자인고딕, AppleGothic 순으로 적용됩니다. 나눔고딕이 없으신 분은 여기에서 다운 받으시면 됩니다
[공지3] 제 글을 복사하고 싶으신 분이나 저작권 정보를 알고 싶으신 분은 이 글을 읽어 보세요
[공지4] 각종 Open Source License 번역 시작
|
|
|
|
우선 CppUnit 패키지를 풀고 나면, INSTALL-WIN32.txt 라는 파일이 있다.
이 설치 guide에 제시된 대로 %CPPUNIT%\examples\examples.dsw 를 더블 클릭하면 변환할 것인지를 묻고, "Yes"를 선택하면 별 문제없이 잘 변환된다. 그 상태에서 컴파일하면 기본적인 라이브러리는 잘 컴파일되는데, TestRunner 를 비롯해서 에러가 발생하는 것들이 상당히 많이 있다. 기본적인 cppunit library 외에 다른 기능들을 쓰지 않을 것이라면 에러가 발생하는 것들을 무시해도 될 듯하다. 어차피 여기까지 하더라도 cppunit.lib cppunit_dll.lib cppunit_dll.dll 이랑 cppunitd.lib cppunitd_dll.lib cppunitd_dll.dll 등 기본적인 라이브러리는 잘 빌드된다.
TestRunner 쪽 빌드할 때 문제가 발생하는 부분은
%CPPUNIT%\src\msvc6\testrunner\MsDevCallerListCtrl.cpp
의 67번째 라인으로 아무래도 Visual Studio 버전이 Upgrade 되면서 바뀐 부분이 있는데, 그게 소스에 반영되질 않아서 그런 듯하다. 오류 메시지는 다음과 같다
"\MsDevCallerListCtrl.cpp(67) : error C3505: '{80CC9F66-E7D8-4DDD-85B6-D9E6CD0E93E2}' 형식 라이브러리를 로드할 수 없습니다. \MsDevCallerListCtrl.cpp(67) : fatal error C1104: libid를 가져오는 동안 심각한 오류가 발생했습니다. '80cc9f66-e7d8-4ddd-85b6-d9e6cd0e93e2'"
이 문제를 해결하려면 다음과 같이 하면 된다(이건 제대로된 fix 라기 보다는 quick fix 이다).
67번째 라인의 version("7.0") 이라고 된 부분은 version("8.0") 이라고 바꾸면 된다. (version ("9.0") 이라고 바꿔도 된다. 2008에서는)
이걸 제대로 수정하려면 Visual Studio 8 과 Visual Studio 9의 cl.exe compiler 에서 _MSC_VER predefined macro 가 어떻게 정의됐는지 알아낸 다음에 수정하면 될 것 같긴하다. 아무래도 이거 알아내려면 또 여기 저기 뒤져야 할 것 같아서 그냥 두기로 했다.
여기까지 하면 cppunit*.* 라이브러리들 외에 testrunner*.* 라이브러리들도 생기므로 TestRunner 인터페이스도 쓸 수 있을 것 같다.
참고문헌 VC++ 7.0(VS .NET)에서 CppUnit (NUIT아님) 쓰고 싶은 사람 나만 따라 해바바바바~ : VS 7.0 에서 컴파일하는 내용이지만 그 이후 버전에서도 개념의 거의 비슷하므로 따라하면 도움이 된다. VS 7에서 CPP Unit 사용하기 : 위 글보다 약간 더 자세해서 이해하기 쉽다. 위 분은 모든 프로젝트에서 공통적으로 설정하는 방법을 몰라 헤맸는데, 이 분은 그걸 정확히 설명해 놓으셨다. CPPUnit 을 사용하기 위한 단계별 작업 : 덧붙여 Test Case 를 작성하는 샘플과 프로젝트 세팅해야할 항목을 설명해 놓으셨다. 그런데 프로젝트 라이브러리 세팅하는 것은 첫글을 보는 게 나을 듯하다. CppUnit : 세부적으로 나와 있진 않지만 위 세글을 모두 합쳐놓은 듯한 글이다. Reference 로 삼으면 좋을 듯하다. 이 글에서는 %CPPUNIT%\examples\examples.dsw 보다는 %CPPUNIT%\src\CppUnitLibraries.dsw 으로 컴파일하라고 나와 있는데, 이글에 나와있는 대로 따라하는 게 시간 절약하는 방법일 것 같다.
제 글이 유익하셨다면 오른쪽 버튼을 눌러 제 블로그를 구독하세요. ->  블로그를 구독하는 방법을 잘 모르시는 분은 2. RSS 활용을 클릭하세요. RSS에 대해 잘 모르시는 분은 1. RSS란 무엇인가를 클릭하세요.
제 글이 유익하셨다면 오른쪽 버튼을 눌러 제 블로그를 구독하세요. ->  블로그를 구독하는 방법을 잘 모르시는 분은 2. RSS 활용을 클릭하세요. RSS에 대해 잘 모르시는 분은 1. RSS란 무엇인가를 클릭하세요.
마지막으로 제 글이 유익하셨다면 과감하게 추천 버튼 한방 부탁드립니다 ^^
|
|
Track this back : http://yesarang.tistory.com/trackback/246
|
|
|