Share via


csc.exe를 사용한 명령줄 빌드

명령 프롬프트에서 실행 파일 (csc.exe)의 이름을 입력 하 여 C# 컴파일러를 호출할 수 있습니다.

사용 하는 경우는 Visual Studio 명령 프롬프트 창에서 모든 필요한 환경 변수는 설정 합니다.해당 창에서 액세스할 수 있는 Windows 7에는 시작 메뉴에서 Microsoft Visual Studio 사용 하 여 버전\Visual Studio 도구 폴더.Windows 8에서 Visual Studio 명령 프롬프트 라고는 개발자가 명령 프롬프트에 VS2012, 및 시작 화면에서 검색 하 여 찾을 수 있습니다.

표준 명령 프롬프트 창을 사용 하는 경우 컴퓨터의 하위 디렉터리에서 csc.exe를 호출 하려면 먼저 사용자가 경로 조정 해야 합니다.또한 명령줄 빌드를 지원 하기 위해 적절 한 환경 변수를 설정 하기 위해 vsvars32.bat를 실행 해야 합니다.찾고 실행 하는 방법에 대 한 지침을 포함 하 여 vsvars32.bat에 대 한 자세한 내용은 참조 하십시오 방법: 환경 변수 설정.

만 있는 컴퓨터에서 작업 중인 경우는 Windows SDK(소프트웨어 개발 키트), C# 컴파일러에 사용할 수 있습니다는 SDK 명령 프롬프트에서 열은 Microsoft.NET Framework SDK 메뉴 옵션.

또한 Msbuild를 사용 C# 응용 프로그램을 프로그래밍 방식으로 작성할 수 있습니다.자세한 내용은 MSBuild을 참조하십시오.

Csc.exe 실행 파일은 일반적으로 Microsoft.net\framework\에 위치한버전 Windows 디렉터리 아래의 폴더입니다.위치는 정확 하 게 특정 컴퓨터 구성에 따라 달라질 수 있습니다..NET Framework 버전이 두 개 이상 컴퓨터에 설치 되어 있으면이 파일의 여러 버전을 찾을 수 있습니다.이러한 설치에 대한 자세한 내용은 설치된 .NET Framework 버전 확인를 참조하십시오.

팁

Visual Studio IDE를 사용 하 여 프로젝트를 빌드할 때 표시할 수는 csc 명령 및 해당 연결 된 컴파일러 옵션에는 출력 창.이 정보를 표시 하는 지시에 따라 방법: 빌드 로그 파일 보기, 저장 및 구성 정도에 로그 데이터를 변경 하려면 보통 또는 자세히.프로젝트를 다시 빌드한 후 검색 된 출력csc C# 컴파일러의 호출을 찾을 수.

항목 내용

  • 명령줄 구문 규칙

  • 샘플 명령줄

  • C# 컴파일러와 C++ 컴파일러 출력 간의 차이

C# 컴파일러의 명령줄 구문 규칙

C# 컴파일러에서는 운영 체제 명령줄에 지정된 인수를 해석할 때 다음 규칙이 적용됩니다.

  • 인수를 공백이나 탭으로 구분합니다.

  • 캐럿 기호(^)는 이스케이프 문자나 구분 기호로 인식되지 않습니다.문자를 프로그램의 argv 배열에 전달하기 전에 운영 체제의 명령줄 파서에서 처리합니다.

  • 큰따옴표로 묶은 문자열("문자열")은 포함된 공백에 상관없이 하나의 인수로 해석됩니다.따옴표로 묶은 문자열은 인수에 포함될 수 있습니다.

  • 백슬래시 다음의 큰따옴표(\")는 리터럴 큰따옴표 문자(")로 해석됩니다.

  • 백슬래시는 큰따옴표 바로 앞에 있지 않으면 리터럴로 해석됩니다.

  • 짝수 개의 백슬래시 다음에 큰따옴표가 오면 각 백슬래시 쌍마다 하나의 백슬래시가 argv 배열에 놓이고 큰따옴표는 문자열 구분 기호로 해석됩니다.

  • 홀수 개의 백슬래시 다음에 큰따옴표가 오면 각 백슬래시 쌍마다 하나의 백슬래시가 argv 배열에 놓이고 큰따옴표는 남은 백슬래시로 "이스케이프"됩니다.이 경우 리터럴 큰따옴표(")가 argv에 추가됩니다.

C# 컴파일러의 샘플 명령줄

  • File.cs를 컴파일하여 File.exe를 만듭니다.

    csc File.cs 
    
  • File.cs를 컴파일하여 File.dll을 만듭니다.

    csc /target:library File.cs
    
  • File.cs를 컴파일하여 My.exe를 만듭니다.

    csc /out:My.exe File.cs
    
  • 최적화 기능을 사용하고 DEBUG 기호를 정의한 상태에서 현재 디렉터리의 모든 C# 파일을 컴파일합니다.출력 파일은 File2.exe입니다.

    csc /define:DEBUG /optimize /out:File2.exe *.cs
    
  • 현재 디렉터리의 모든 C# 파일을 컴파일하여 File2.dll의 디버그 버전을 만듭니다.로고와 경고는 표시되지 않습니다.

    csc /target:library /out:File2.dll /warn:0 /nologo /debug *.cs
    
  • 현재 디렉터리의 모든 C# 파일을 Something.xyz(DLL)로 컴파일합니다.

    csc /target:library /out:Something.xyz *.cs
    

C# 컴파일러와 C++ 컴파일러 출력 간의 차이

C# 컴파일러를 실행할 때 만든 개체 (.obj) 파일입니다. 출력 파일이 직접 만들어집니다.따라서 C# 컴파일러에서는 링커가 필요하지 않습니다.

참고 항목

작업

방법: 명령줄 인수 표시(C# 프로그래밍 가이드)

방법: foreach를 사용하여 명령줄 인수 액세스(C# 프로그래밍 가이드)

참조

C# 컴파일러 옵션 사전순 목록

C# 컴파일러 옵션 범주별 목록

명령줄 인수(C# 프로그래밍 가이드)

Main() 반환 값(C# 프로그래밍 가이드)

개념

Main()과 명령줄 인수(C# 프로그래밍 가이드)

기타 리소스

C# 컴파일러 옵션