/MD, /MT, /LD(런타임 라이브러리 사용)
다중 스레드 모듈이 DLL인지 여부를 나타내고 런타임 라이브러리의 정품 또는 디버그 버전을 지정합니다.
구문
/MD[d]
/MT[d]
/LD[d]
설명
옵션 | 설명 |
---|---|
/MD | 런타임 라이브러리의 다중 스레드별 및 DLL별 버전을 사용합니다.
_MT 및 _DLL 를 정의합니다. 링커는 MSVCRT.lib 가져오기 라이브러리를 사용하여 런타임 기호를 확인합니다. |
/MDd | 런타임 라이브러리의 디버그 다중 스레드별 및 DLL별 버전을 사용합니다.
_DEBUG , _MT 및 _DLL 정의합니다. 링커는 MSVCRTD.lib 가져오기 라이브러리를 사용하여 런타임 기호를 확인합니다. |
/MT | 런타임 라이브러리의 다중 스레드 정적 버전을 사용합니다.
_MT 정의합니다. 링커는 LIBCMT.lib 사용하여 런타임 기호를 확인합니다. |
/MTd | 런타임 라이브러리의 디버그 다중 스레드 정적 버전을 사용합니다.
_DEBUG 및 _MT 를 정의합니다. 링커는 LIBCMTD.lib 사용하여 런타임 기호를 확인합니다. |
/LD | DLL을 만듭니다. 링커에 /DLL 옵션을 전달합니다. 링커는 DllMain 함수를 찾지만 이 함수가 꼭 있어야 하는 것은 아닙니다.
DllMain 함수를 작성하지 않으면 링커는 TRUE를 반환하는 DllMain 함수를 삽입합니다.DLL 시작 코드를 링크합니다. 명령줄에 내보내기( .exp ) 파일이 지정되지 않은 경우 가져오기 라이브러리(.lib )를 만듭니다. DLL을 호출하는 애플리케이션에 가져오기 라이브러리를 연결합니다./Fe(이름 EXE 파일) .exe 파일이 아닌 DLL 이름을 지정하는 것으로 해석합니다. 기본적으로 프로그램 이름은 basename.exe 대신 basename.dll이 됩니다./MD를 명시적으로 지정하지 않는 한 /MT를 의미합니다. |
/LDd | 디버그 DLL을 만듭니다.
_MT 및 _DEBUG 를 정의합니다. |
C 런타임 라이브러리 및 /clr(공용 언어 런타임 컴파일)사용하여 컴파일할 때 사용되는 라이브러리에 대한 자세한 내용은 CRT 라이브러리 기능참조하세요.
링커의 지정된 호출에 전달된 모든 모듈은 동일한 런타임 라이브러리 컴파일러 옵션(/MD, /MT, /LD)을 사용하여 컴파일되어야 합니다.
런타임 라이브러리의 디버그 버전을 사용하는 방법에 대한 자세한 내용은 C 런타임 라이브러리 참조참조하세요.
DLL에 대한 자세한 내용은 Visual Studio에서 C/C++ DLL 만들기를 참조하세요.
Visual Studio 개발 환경에서 이 컴파일러 옵션을 설정하려면
- 프로젝트의 속성 페이지 대화 상자를 엽니다. 자세한 내용은 Visual Studio에서 C++ 컴파일러 및 빌드 속성 설정을 참조하세요.
- 구성 속성>C/C++>코드 생성 속성 페이지를 선택합니다.
- 런타임 라이브러리 속성을 수정합니다.
프로그래밍 방식으로 이 컴파일러 옵션을 설정하려면
- RuntimeLibrary을(를) 참조하세요.