Visual Studio 2005를 사용하여 C/C++ 정적 라이브러리를 작성하려고합니다. 런타임 라이브러리 선택이 컴파일 옵션이므로 런타임 라이브러리의 각 변형에 대해 하나씩 네 가지 변형 라이브러리를 작성해야합니다. :왜 런타임 라이브러리는 링커 옵션이 아닌 컴파일러 옵션입니까?
- /MT - 정적 런타임 라이브러리
- /MD - DLL 런타임 라이브러리
- /MTD - 디버그 정적 런타임 라이브러리
- /MDD - 디버그 DLL 런타임 라이브러리
이들은 컴파일러 옵션이며 링커 옵션은 아닙니다. 리눅스 배경에서 오는 것은 이상하게 보입니다. 다른 런타임 라이브러리에는 다른 호출 규칙이 있습니까? 왜 다른 런타임 라이브러리를 링크 타임에 해결할 수 있습니까? 예를 들어 정적 라이브러리를 사용하는 응용 프로그램을 연결할 때?
답안에 주어진이 좋은 이유가있는 것처럼 보이지만 나는 당신에게 동의합니다. 나는 항상 잘못된 장소에서이 설정을 찾는다. Precompiled Headers 설정의 경우와 마찬가지로 Preprocessor 섹션에있는 것이 아니라 자체 범주가 있습니다. –