본문 바로가기
개발아닌개발/C,C++

[오류] msvcrtd.lib(msvcr90d.dll)에 이미 정의되어 있습니다.

by 불청객 2022. 2. 28.
반응형

visual studio 2008

MFC

 

 

 

 

이전에 작성한 zlib 적용방법과 다른 방법- .. 적용하다보면 발생하는 오류에 대한 해결방법

 

 

[MFC] 내 프로젝트에 외부 라이브러리(zlib 1.2.11) 적용 방법 - windows

visual studio 2008 window10 적용 버전 : zlib 1.2.11 (http://www.zlib.net/) Zip 다운 후 압축 해제 [ 준비 단계 ] 1. 비주얼스튜디오 2008에서 새프로젝트 열기 zlib 이름의 Win32 콘솔 응용 프로그램 -> 확..

mamm.tistory.com

 

 

 

 

홈페이지에서 다운로드 후, 

 

1. 내 프로젝트 內 솔루션탐색기 -> 최상단에 있는 솔루션 폴더(?)  마우스 우클릭 -> 추가 - 기존항목

zlib1211 > zlib-1.2.11 > contrib > vstudio > vc9 폴더 안에 있는 zlibstat 프로젝트 선택!

 

2. 내 프로젝트 內 솔루션탐색기 -> 마우스 우 클릭 후 프로젝트 종속성 추가 하기 

: HafpProject가 zlibstat에 종속되면 됨!

 

3. 내 프로젝트 內 솔루션 탐색기 -> zlibstat 마우스 우 클릭 

구성속성 ->  C/C++ -> 전처리기 정의 내 Zlib ?뭐 한줄있는거 지우고 확인 적용!

 

4. 다운받은 zlib 폴더안에서

zlib.h 와 zconf.h 파일은 탐색기안의 내 프로젝트 폴더 안에 넣어둘것!

 

 

 

 

솔루션 다시 빌드!! 

 

 

하면 아래와 같은 오류가 발생한다.

더보기

error LNK2005: _lock이(가) msvcrtd.lib(msvcr90d.dll)에 이미 정의되어 있습니다. LIBCMTD.lib

error LNK2019: _main 외부 기호(참조 위치: ___tmainCRTStartup 함수)에서 확인하지 못했습니다. LIBCMTD.lib

... 

 

 

 

 

 

 

 

해결방안

 

Alt + F7 프로젝트 속성 페이지 열기

 

1.

구성속성 -> C/C++ -> 코드 생성 

런타임 라이브러리 : 다중 스레드 디버그 DLL(/MDd)

 

2. 

구성속성 -> C/C++ -> 링커 -> 입력 

특정 라이브러리 무시 : LIBCMTD.LIB 

728x90
반응형

댓글