IT story

Visual Studio에서 만든 obj 및 bin 폴더는 무엇에 사용됩니까?

hot-time 2020. 5. 12. 08:02
반응형

Visual Studio에서 만든 obj 및 bin 폴더는 무엇에 사용됩니까?


난 비주얼 스튜디오 2010에서 새 프로젝트를 생성라는 두 개의 새 폴더가 지금 있다는 것을 발견 obj하고 bin내 프로젝트 디렉토리입니다.

빌드 및 디버깅 할 때 비슷한 폴더 쌍이 만들어집니다. 이러한 폴더는 무엇입니까?


obj폴더는 보유 목적, 또는 중간, 파일을 아직 연결되지 않은 바이너리 파일을 컴파일된다. 그것들은 본질적으로 최종 실행 파일을 생성하기 위해 결합되는 조각입니다. 컴파일러는 각 소스 파일에 대해 하나의 객체 파일을 생성하며 해당 파일은 obj폴더에 저장됩니다.

bin폴더에는 응용 프로그램이나 라이브러리의 실제 실행 코드 인 이진 파일 이 들어 있습니다.

이러한 각 폴더는 프로젝트의 빌드 구성에 해당하는 폴더 DebugRelease폴더 로 세분화됩니다 . 위에서 설명한 두 가지 유형의 파일은 수행하는 빌드 유형에 따라 적절한 폴더에 저장됩니다. 이를 통해 디버깅 기호로 구축 된 실행 파일과 최적화가 활성화되어 출시 준비가 된 실행 파일을 쉽게 확인할 수 있습니다.

프로젝트 속성에서 컴파일하는 동안 Visual Studio가 실행 파일을 출력하는 위치를 변경할 수 있습니다. 빌드 구성에 대한 이름과 선택한 옵션을 변경할 수도 있습니다.


C # bin과 obj 폴더 의 차이점을 보여주고 증분 / 조건부 컴파일의 이점을 얻는 방법을 설명하는 이 YouTube 비디오를 볼 것을 권장합니다 .

C # 컴파일은 2 단계 프로세스입니다. 자세한 내용은 아래 다이어그램을 참조하십시오.

  1. 컴파일 :-컴파일 단계에서 개별 C # 코드 파일은 개별 컴파일 된 단위로 컴파일됩니다. 컴파일 된 개별 코드 파일은 OBJ 디렉토리에 있습니다.
  2. 연결 :-연결 단계에서 이러한 개별 컴파일 된 코드 파일은 단일 단위 DLL 및 EXE를 만들기 위해 연결됩니다. 이것은 BIN 디렉토리에 들어갑니다.

C # bin과 obj 폴더

bin과 obj 디렉토리를 비교하면 "bin"에 단일 단위가 있고 개별 컴파일 된 코드 파일이 있으므로 "obj"디렉토리에 더 많은 파일이 있습니다.

빈 대 obj


obj디렉토리는 빌드하는 동안 컴파일러 또는 빌드 시스템에서 생성되는 중간 오브젝트 파일 및 기타 임시 데이터 파일입니다. bin디렉토리는 최종 출력 바이너리 (및 종속성 또는 기타 배포 파일)에 기록됩니다 디렉토리입니다.

원하는 경우 프로젝트 설정 내에서 두 가지 용도로 사용되는 실제 디렉토리를 변경할 수 있습니다.


obj 디렉토리에 대한 흥미로운 사실 ​​: 웹 프로젝트에서 공개 설정을 한 경우 공개 될 파일은 obj \ Release \ Package \ PackageTmp로 스테이징됩니다. 통합 VS 기능을 사용하지 않고 직접 파일을 게시하려는 경우 bin 디렉토리의 모든 디지털 파편을 선택하지 않고 실제로 배치해야하는 파일을 가져올 수 있습니다.

참고 URL : https://stackoverflow.com/questions/5308491/what-are-the-obj-and-bin-folders-created-by-visual-studio-used-for

반응형