Visual Studio 2012 (및 이전 버전)은 C 코드를 컴파일 할 수 있습니다. 일반 C, C++가 아닙니다. 런타임 문제를 피하려면 좋은 기능입니다. 나는 평범한 C 바이너리를 컴파일하려고 생각했고 없이MSVCRT
런타임이 없기를 바랬다.MSVCRT 런타임이없는 Visual Studio 2012에서 C 컴파일
/TC
(C로 컴파일) 옵션을 추가 한 후 kernel32 및 ntdll과 같은 기본 종속성 만있는 이진 파일을 얻길 바랬습니다. 하지만 그 대신, 이것은 연결되었다 :
우리는 VS 2012 하지 런타임을 사용하고 싶습니다. GCC 컴파일러는 그것을 필요로하지 않으므로 VS에서 "간단한"바이너리를 컴파일하는 방법이 있어야합니다. 우리는 반드시 복잡한 문자열 함수 나 날짜/시간 라이브러리, 단순한 코드 만 필요로하지는 않습니다.
질문 : MSVCRT 런타임 (또는 C++ 코드)없이 Visual Studio 2012에서 C 코드를 컴파일 할 수 있습니까?
편집 : 정적 링크 (/MT
)
나는 VS/Windows에 익숙하지 않지만'printf','strcmp','memcpy' 같은 것이 어디에 있을까요? MSVC 런타임은 리눅스에서'libc.so'가하는 것과 비슷합니다. – us2012
왜/MT가 아니겠습니까? 나는 그것이 당신이 실제로 사용하는 것들만 연결한다고 생각하니? 따라서 MSVCRT에서 아무 것도 사용하지 않으면 링크가 없습니다. – user2802841
잘 모르겠습니다 만,'memcpy'는 Windows 컴퓨터보다 분산 된 다른 DLL에서도 사용할 수 있다고 생각합니다. – bytecode77