|
단순한 콘솔 C 프로그램이나 WIN32 API만을 사용한 프로그램이라면 대부분 컴파일될겁니다.
두 컴파일러 다 ANSI C 호환이니까요.
그런데 RTL(Runtime Library)에서 ANSI C에 정의되지 않은 확장된 부분은 약간의 차이가 있습니다.
각각의 라이브러리 레퍼런스(M$ VC++은 MSDN)을 참고하셔서 호환성을 체크하시고
다르면 적당히 변환해야 합니다.
그리고 C++ 코드라면 또 조심해야 합니다.
M$ VC++(여기서 VC++.NET은 제외하고 버전 6.0 이하를 말합니다.)의 엿같은 컴파일러는 ANSI C++ 표준을 정확히 지키지 못합니다.
그래서 Borland C++ 컴파일러에서 멀정히 컴파일되는 코드가 M$ VC++에서 컴파일되지 않는 경우가 허다합니다. 특히 STL을 쓰실 때는 정말 주의해야 합니다.
그리고 소스라면 그럭저럭 수정해서 만들되지만,
LIB, DLL 등의 라이브러리는 호환이 안됩니다.
다행히도 님이 원하시는 경우와 반대의 경우(M$ VC++ 걸 BC로 변환)는
coff2omf.exe 라는 유틸이 있어서 쉽게 변환 가능하지만,
BC걸 VC로 변환하기는 쉽지 않습니다.
가능하면 M$ VC++은 내다버리시고, Borland C++Builder로 바꾸세요!
참고로, 이 사이트는 Anti M$ VC++ 입니다. ^_^
|