에러가 아니고 경고가 아니던가요? --;
그 경고의 원인은.. 종류가 다른 런타임 디폴트 라이브러리와 링크된 오브
젝트 화일을 서로 링크시킬 경우 발생합니다. 예를 들면.. 릴리즈모드로 컴
파일한 라이브러리와 디버그모드의 오브젝트 화일을 링크시키면.. 디폴트라
이브러리가 다르기 때문에...(각 릴리즈모드, 디버그모드, 싱글, 싱글쓰레
드, 멀티쓰레드...들의 디폴트 라이브러리가 다르죠.) 서로 다른 모드로 컴
파일한 오브젝트끼리 컴파일하면.. 그런 경고가 뜨는 거죠. libcmt.lib는
멀티쓰레드 프로그램에 링크되는 디폴트라입이라는군요. libcmtd.lib 은 멀
티쓰레드 프로그램의 디버그 모드 프로그램;;
해결책은.. 같은 모드로 컴파일한 라이브러리와 메인코드를 링크시키던
지...아님 메인프로젝트의 디폴트라이브러리를 몇개 무시하면 됩니다만..
프로젝트 옵션에서 경고가 지적해준데로.. /NODEFAULTLIB:????.lib 하시면
될겁니다.
아.마.도.요. --; 각 컴파일 모드 별로 무시해야 하는 라이브러리는 아래와
같습니다.
To use this run-time library Ignore these libraries
Single-threaded (libc.lib) libcmt.lib, msvcrt.lib, libcd.lib,
libcmtd.lib, msvcrtd.lib
Multithreaded (libcmt.lib) libc.lib, msvcrt.lib, libcd.lib,
libcmtd.lib, msvcrtd.lib
Multithreaded using DLL (msvcrt.lib) libc.lib, libcmt.lib, libcd.lib,
libcmtd.lib, msvcrtd.lib
Debug Single-threaded (libcd.lib) libc.lib, libcmt.lib, msvcrt.lib,
libcmtd.lib, msvcrtd.lib
Debug Multithreaded (libcmtd.lib) libc.lib, libcmt.lib, msvcrt.lib,
libcd.lib, msvcrtd.lib
Debug Multithreaded using DLL (msvcrtd.lib) libc.lib, libcmt.lib,
msvcrt.lib, libcd.lib, libcmtd.lib
하..MSDN에서 뽑아왔습니다.
그 경고의 원인은.. 종류가 다른 런타임 디폴트 라이브러리와 링크된 오브
젝트 화일을 서로 링크시킬 경우 발생합니다. 예를 들면.. 릴리즈모드로 컴
파일한 라이브러리와 디버그모드의 오브젝트 화일을 링크시키면.. 디폴트라
이브러리가 다르기 때문에...(각 릴리즈모드, 디버그모드, 싱글, 싱글쓰레
드, 멀티쓰레드...들의 디폴트 라이브러리가 다르죠.) 서로 다른 모드로 컴
파일한 오브젝트끼리 컴파일하면.. 그런 경고가 뜨는 거죠. libcmt.lib는
멀티쓰레드 프로그램에 링크되는 디폴트라입이라는군요. libcmtd.lib 은 멀
티쓰레드 프로그램의 디버그 모드 프로그램;;
해결책은.. 같은 모드로 컴파일한 라이브러리와 메인코드를 링크시키던
지...아님 메인프로젝트의 디폴트라이브러리를 몇개 무시하면 됩니다만..
프로젝트 옵션에서 경고가 지적해준데로.. /NODEFAULTLIB:????.lib 하시면
될겁니다.
아.마.도.요. --; 각 컴파일 모드 별로 무시해야 하는 라이브러리는 아래와
같습니다.
To use this run-time library Ignore these libraries
Single-threaded (libc.lib) libcmt.lib, msvcrt.lib, libcd.lib,
libcmtd.lib, msvcrtd.lib
Multithreaded (libcmt.lib) libc.lib, msvcrt.lib, libcd.lib,
libcmtd.lib, msvcrtd.lib
Multithreaded using DLL (msvcrt.lib) libc.lib, libcmt.lib, libcd.lib,
libcmtd.lib, msvcrtd.lib
Debug Single-threaded (libcd.lib) libc.lib, libcmt.lib, msvcrt.lib,
libcmtd.lib, msvcrtd.lib
Debug Multithreaded (libcmtd.lib) libc.lib, libcmt.lib, msvcrt.lib,
libcd.lib, msvcrtd.lib
Debug Multithreaded using DLL (msvcrtd.lib) libc.lib, libcmt.lib,
msvcrt.lib, libcd.lib, libcmtd.lib
하..MSDN에서 뽑아왔습니다.