반응형

동적 라이브러리 생성시에 Debug 모드일때와 Release 모드일때 파일명을 다르게 하면

프로젝트를 진행할때 오류사항을 줄일수 있다. 

아래 설명시 ExD 는 디버그 용을 의미하고 Ex 는 릴리즈 용을 의미 하는 것으로 설명 한다.

그러면 방법을 알아보자

1. 두개의 def 파일 생성후 프로젝트에 넣기
   1) "파일명Ex.def" (릴리즈 용)
   2) "파일명ExD.def" (디버그 용)
두개의 파일을 Source Files에 넣은후 "파일명Ex.def" 를 더블 클릭 하여 아래 빨간 표시로 된 부분이 파일명과 같도록 수정한다.


 "파일명ExD.def" 를 더블 클릭 하여 아래 빨간 표시로 된 부분이 파일명과 같도록 수정한다.



2. 빌드시 생성될 실제 Dll 파일 이름을 변경

Alt + F7 버튼 누르면 "Setting" 화면이 실행된다.
"Debug 모드" 인지 확인후 아래와 같이 파일명을 변경한다.
Link 탭 -> Category : General -> Output file name : Debug/DllTest.dll 을 Debug/DllTestExD.dll 로 변경

"Release 모드"
Link 탭 -> Category : General -> Output file name : Release/DllTest.dll 을 Release/DllTestEx.dll 로 변경


3. 빌드 모드에 따른 def 파일 연결

아래와 같이 Debug 모드인지 확인후 "파일명ExD.def" 클릭후 "Exclude file from build" 체크 박스를 해제 한다.


아래와 같이 Release 모드인지 확인후 "파일명Ex.def" 클릭후 "Exclude file from build" 체크 박스를 해제 한다.


그러면 완료 된다.

4. Dll 사용시

#ifndef _DEBUG
#pragma comment (lib, "dllTestExD.lib")
#else
#pragma comment (lib, "dllTestEx.lib")
#endif

위와 같은 형태로 디버그일때는 dllTestExD.lib 을 사용하고 릴리즈 일때는 dllTestEx.lib 을 사용하도록 하면 된다.


반응형

+ Recent posts