Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

비주얼 스튜디오 속성 창의 "Build(빌드)" / "Configuration(구성)"에서의 "활성" 의미

아래와 같은 질문이 있군요. ^^

교재 315페이지 내용 질문
; https://www.sysnet.pe.kr/3/0/5485

예를 들어 프로젝트 속성 창에 보면 "구성" 옵션이 다음과 같이 선택할 수 있는데,

vs_dbg_rel_1.png

  • Active (Debug)
  • Debug
  • Release

여기서 "Active (Debug)"와 "Debug"의 차이점은 없습니다. 아니, 차이점이 없는 정도가 아니라 그냥 동일한 설정을 가리키는 것입니다. 단지, 현재 해당 프로젝트를 빌드 또는 실행시키면 Debug 모드로 될 거라는 것을 "Active (....)"로 표현해 주는 것입니다.

만약 저 옵션 선택 창이 다음과 같이 되어 있다면,

  • Active (Release)
  • Debug
  • Release

이때는 현재 프로젝트가 (Ctrl+B, F5 또는 Ctrl+F5 키를 누를 경우) Release 모드로 빌드될 것임을 의미합니다.




그렇다면 Active 대상이 되는 Debug와 Release 빌드는 어떻게 선택하는 걸까요? 그것은 비주얼 스튜디오의 툴바에 있는 옵션을 통해 가능합니다.

vs_dbg_rel_2.png

즉, 저 메뉴에서 "Debug"를 선택하고 있기 때문에 현재 프로젝트가 디버그 모드로 빌드될 것을 의미하며, 이때 프로젝트 속성 창에서는 "Active (Debug)"가 나오는 것입니다. 만약 저 옵션을 "Release"로 선택했다면, 프로젝트는 릴리스 모드로 빌드될 것이고 프로젝트 속성 창에는 "Active (Release)"가 나옵니다.




그런데 사실 저건 기본 설정 상태에서 그런 것이고, 엄밀히 따지만 Active의 기준은 "Configuration Manager"에서 결정이 됩니다. 위의 메뉴에 보면 "Debug", "Release", "Configuration Manager..."가 있는데요, 마지막의 메뉴를 선택하면 다음과 같은 창이 뜹니다.

vs_dbg_rel_3.png

보는 바와 같이 "Active solution configuration"이 "Debug"로 대표되는 설정에서는 "ConsoleApp1" 프로젝트가 "Debug" 모드로 빌드하도록 선택되어 있습니다. 그래서 비주얼 스튜디오의 툴바에서 "Debug"로 선택하면 프로젝트의 Active가 Debug로 되는 것입니다.

그렇다면, 위의 Configuration Manager 창에서 ConsoleApp1의 Configuration을 "Release"로 바꾸면 어떻게 될까요?

그럼, 비주얼 스튜디오의 툴바에서 Debug로 놓고 빌드해도 ConsoleApp1은 Release 모드로 빌드가 됩니다. 또한, 속성 창에 가면 "Active (Debug)"가 아니라 "Active (Release)"가 나옵니다.




정리해 보면, 비주얼 스튜디오에서 빌드했을 때 툴바에 선택한 설정에 따라 모든 프로젝트를 일괄적으로 Debug 모드로, 또는 Release 모드로 빌드하는 것이 가능합니다. 또는, 원한다면 특정 프로젝트만 Debug 설정에서도 Release 모드로 빌드할 수 있고, 혹은 Release 설정에서도 Debug 모드로 빌드하도록 사용자 정의할 수 있습니다.




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 4/19/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 16  17  18  19  [20]  21  22  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
13138정성태10/8/20227404.NET Framework: 2056. C# - await 비동기 호출을 기대한 메서드가 동기로 호출되었을 때의 부작용 [1]
13137정성태10/8/20225752.NET Framework: 2055. 리눅스 환경의 .NET Core 3/5+ 메모리 덤프로부터 닷넷 모듈을 추출하는 방법
13136정성태10/7/20226331.NET Framework: 2054. .NET Core/5+ SDK 설치 없이 dotnet-dump 사용하는 방법
13135정성태10/5/20226575.NET Framework: 2053. 리눅스 환경의 .NET Core 3/5+ 메모리 덤프를 분석하는 방법 - 두 번째 이야기
13134정성태10/4/20225304오류 유형: 820. There is a problem with AMD Radeon RX 5600 XT device. For more information, search for 'graphics device driver error code 31'
13133정성태10/4/20225618Windows: 211. Windows - (commit이 아닌) reserved 메모리 사용량 확인 방법 [1]
13132정성태10/3/20225531스크립트: 42. 파이썬 - latexify-py 패키지 소개 - 함수를 mathjax 식으로 표현
13131정성태10/3/20228273.NET Framework: 2052. C# - Windows Forms의 데이터 바인딩 지원(DataBinding, DataSource) [2]파일 다운로드1
13130정성태9/28/20225250.NET Framework: 2051. .NET Core/5+ - 에러 로깅을 위한 Middleware가 동작하지 않는 경우파일 다운로드1
13129정성태9/27/20225569.NET Framework: 2050. .NET Core를 IIS에서 호스팅하는 경우 .NET Framework CLR이 함께 로드되는 환경
13128정성태9/23/20228195C/C++: 158. Visual C++ - IDL 구문 중 "unsigned long"을 인식하지 못하는 #import파일 다운로드1
13127정성태9/22/20226687Windows: 210. WSL에 systemd 도입
13126정성태9/15/20227314.NET Framework: 2049. C# 11 - 정적 메서드에 대한 delegate 처리 시 cache 적용
13125정성태9/14/20227525.NET Framework: 2048. C# 11 - 구조체 필드의 자동 초기화(auto-default structs)
13124정성태9/13/20227280.NET Framework: 2047. Golang, Python, C#에서의 CRC32 사용
13123정성태9/8/20227702.NET Framework: 2046. C# 11 - 멤버(속성/필드)에 지정할 수 있는 required 예약어 추가
13122정성태8/26/20227585.NET Framework: 2045. C# 11 - 메서드 매개 변수에 대한 nameof 지원
13121정성태8/23/20225541C/C++: 157. Golang - 구조체의 slice 필드를 Reflection을 이용해 변경하는 방법
13120정성태8/19/20227075Windows: 209. Windows NT Service에서 UI를 다루는 방법 [3]
13119정성태8/18/20226623.NET Framework: 2044. .NET Core/5+ 프로젝트에서 참조 DLL이 보관된 공통 디렉터리를 지정하는 방법
13118정성태8/18/20225478.NET Framework: 2043. WPF Color의 기본 색 영역은 (sRGB가 아닌) scRGB [2]
13117정성태8/17/20227660.NET Framework: 2042. C# 11 - 파일 범위 내에서 유효한 타입 정의 (File-local types)파일 다운로드1
13116정성태8/4/20228121.NET Framework: 2041. C# - Socket.Close 시 Socket.Receive 메서드에서 예외가 발생하는 문제파일 다운로드1
13115정성태8/3/20228489.NET Framework: 2040. C# - ValueTask와 Task의 성능 비교 [1]파일 다운로드1
13114정성태8/2/20228684.NET Framework: 2039. C# - Task와 비교해 본 ValueTask 사용법파일 다운로드1
13113정성태7/31/20227925.NET Framework: 2038. C# 11 - Span 타입에 대한 패턴 매칭 (Pattern matching on ReadOnlySpan<char>)
... 16  17  18  19  [20]  21  22  23  24  25  26  27  28  29  30  ...