본문 바로가기

Programming/C C++

[C, C++] Microsoft C, C++ Compiler

MS사의 Visual Studio 개발도구에는 C와 C++ Compile인 cl.exe Compiler가 같이 포함되어 있습니다.

해당 Compiler의 위치는 C:\Program Files\Microsoft Visual Studio 9.0\VC\bin (VS 2008기준이며 각 VS Version마다 약간씩 차이가 있을 수 있습니다.)에 위치해 있습니다.


cl.exe Compiler는 원한다면 다른 위치에서 사용해도 상관없으나 cl.exe를 이용해 C/C++ Source를 Compil하려면 환경변수라를 것을 먼저 설정해야 합니다.

환경변수 설정은 cl.exe Compiler와 함께 같이 포함되어 있는 vcvars32.bat Batch을 통해 간단히 설정할 수 있으며 이 File을 실행시켜 주기만 하면 됩니다.


특정 작업 Folder를 생성하고 그 안에서 작업하기를 원한다면 cl.exe와 vcvars32.bat File이 같이 존재해야 합니다.

다음은 간단한 Program을 작성하고 작성한 Program을 cl.exe Compiler를 이용해 Compil한 후 Program을 실행시키는 예제입니다.


1. cl.exe로 Compil시 Source File및 Object File Compil

(1) cl aaa.c
aaa.c Source File을 Compil하여 aaa.obj Object File을 만들고 생성된 obj를 Link하여 실행 File을 생성합니다.

(2) cl aaa.obj
aaa.obj Object File을 Link하여 Compile하고 실행 File을 생성합니다.

(3) cl aaa.c bbb.c
aaa.c와 bbb.c Source File을 Compil하여 각각 Object File을 만든 후 생성된 Object와 표준 Library를 Link하여 aaa.exe File을 생성합니다.

(4) cl aaa.c bbb.obj
aaa.c Source File을 Compil하여 aaa.obj를 생성한 후 생성된 obj를 bbb.obj와 Link하여 aaa.exe File을 생성합니다.

(5) cl /c aaa.c
/c Switch는 obj만 생성할 뿐 실행 File은 생성하지 않습니다.

2. cl compiler 경고 Message지정

Compil도중의 경고 Message는 compil하고 실행 File을 생성하는데는 문제는 없으나 Program이 정확히 기술되지 않는등의 문제점을 보고하는 역활을 합니다. 예들 들어

#include <stdio.h>
main()
{
  int i;
 
  printf("hello\n");
}

int 형 변수 i를 선언했지만 사용하지는 않은 Program이 있습니다. 이 Program에 대한 Compil은 문제가 없지만


경고 Message의 Level을 높여 다시 Compile하면


변수 i에 대한 경고 Message를 내뱉게 됩니다.

경고 Message의 Level지정은 /W0 부터 /W4 까지 이며 숫자가 높을 수록 좀더 철저히 Source를 검사하여 Message를 발생시킵니다.(기본값은 /W1)

태그