코드 변경이있을 때 실행 전에 Visual Studio 2010이 빌드되지 않음


126

나는 F5 (Start Debugging)를 사용하여 수년 동안 코드를 작성하고 (오래된 경우) 디버그했습니다. 이것은 VS 2010에서도 작동했지만 오늘은 빌드없이 디버깅을 시작합니다. 프로젝트를 정리 한 다음 빌드하는 대신 F5 키를 눌러 실행하면 exe가 존재하지 않는다는 오류 메시지가 표시됩니다. 먼저 빌드하려면 어떻게해야합니까? 무엇을 바꿀 수 있었습니까?


1
나는 같은 문제가 있었다. 하루에서 다음 날까지 발생했으며 옵션 대화 상자에서 아무것도 변경하지 않았습니다. 한스의 대답은 내 문제를 해결했습니다.
jbe

난 그냥, 최근에 우연히 연결 msft를하기 버그 리포트를 게시, 희망 만들기에 투표를 음성 그들 그것을 해결 connect.microsoft.com/VisualStudio/feedback/details/626414/...
제이슨

답변:


164

도구 + 옵션, 프로젝트 및 솔루션, 빌드 및 실행 "실행 중, 프로젝트가 오래된 경우"= 항상 빌드합니다. 그 아래의 것 = 시작하지 마십시오.


7
방금 확인하고 그 설정을 Always Build ...로 설정하면 안됩니다.
jamone

5
내 컴퓨터에서 작동합니다. 당신을 위해 사용됩니다. 다음은 재부팅입니다.
Hans Passant

3
재부팅해도 문제가 해결되지 않았지만 "프로젝트가 오래되었을 때 실행 중"변경 = 항상 빌드 / 저장 VS를 실행하지 말고 다시 변경하십시오.
jamone

3
그것은 버그입니다. connect.microsoft.com에 제출 하시겠습니까?
Hans Passant

1
@Hans : 물론 이것을 어떻게 재현합니까? 마이크로 소프트 커넥트 직원들에게 그것이 문제가 아니라는 사실을 설득하는 것은 재현 할 수 없다면 불가능할 것입니다. 어떤 당신은 다음 기회 dev에의 하나 할 수없는 수없는 것처럼에만 의미가 있습니다
NotMe

119

이 문제가 발생하여 구성 관리자로 밝혀졌습니다. 최근에 Debug | Mixed CPU에서 Debug | Any CPU로 변경했으며 프로젝트가이 구성에서 빌드되도록 설정되지 않았습니다.


이것은 또한 나를 위해 그것을 해결했습니다. 그 문제의 원인 일 것 같습니다.
gstercken

3
좋은 팁! 당신이 생각할 것이 아닙니다. 감사합니다
Almund

1
그래, 이것은 나를 위해 그것을 고쳤다! 구성 관리자에서 빌드 옆에있는 모든 확인란을 클릭하기 만하면됩니다. 고마워 팀!
chaz

나에게도 비슷한 문제가 해결되었습니다. 감사!
오스틴 톰슨

1
내 문제는 잘못된 구성을 선택한 것입니다! 각 구성이 다른 언어 인 별도의 프로젝트가 있었고 콤보는 이러한 구성 중 하나로 설정되었습니다. 방금 Debug_Unicode로 변경했으며 이제 빌드 중입니다!
sergiol

22

구성 관리자를 열고 시작 프로젝트의 빌드 열에서 확인란이 선택되어 있는지 확인하십시오. 나는 같은 문제가 있었지만 확인란이 활성화되지 않았으므로 확인하고 작동합니다!


감사합니다. 옵션을 간과했습니다. ;)
Skalli

17

위의 도구 외에도 '시작시 프로젝트 및 빌드 의존성 만 빌드'가 선택 해제되어 있는지 확인하십시오 (도구-> 옵션-> 프로젝트 및 솔루션-> 빌드 및 실행).


1
나는 그 문제가 있었고 이것이 해결책이었다. 감사.
Roberto Luis Bisbé

1
이것은 나를 위해 수정했지만 버그처럼 보입니다. 문제의 프로젝트는 의존성이므로 빌드해야합니다.
KingOfHypocrites

시작 프로젝트가 두 개 이상이거나 테스트 프로젝트가있는 경우 선택하지 않은 상태로 두는 것이 끔찍한 설정입니다.
cbp

감사합니다!! Microsoft는이 단어를 다시 말로 바꾸고 의미를 변경해야합니다. 그것이 확인되었을 때 무엇을 의미하는지 불분명합니다.
Cameron

10

나도이 문제가 있었다. 나는 아무 소용이 없다고 제안한 모든 것을 점검했다. 내 PC의 시계가 약 12 ​​시간 동안 설정되어 네트워크 드라이브에 저장되고있는 것으로 나타났습니다. 파일의 타임 스탬프에 문제가 있었으며 VS는 파일이 최신 상태이기 때문에 프로젝트를 빌드해야한다고 생각하지 않았습니다.


3

한동안 나는 왜 내 랩탑 (듀얼 코어 2ghz, 2Gb 램)이 내 웹 사이트 (16Gb 램이있는 쿼드 코어 3ghz)보다 빠르게 웹 사이트를 컴파일했는지에 대해 혼란스러워했습니다. 둘 다 SSD 디스크가 있습니다. 빌드 옵션은 모두 올바르게 설정되었지만 (동일한 코어 수 = 병렬 빌드) 랩톱은 몇 초 안에 사이트를 실행하고 dekstop은 사이트를 약 30 초 안에 실행합니다.

사이트의 "속성 페이지"에서 빌드 설정의 추가 옵션을 찾았으며 랩톱은 "빌드 없음"으로 설정되고 데스크탑은 "빌드 및 실행"으로 설정되었습니다. 컴파일러 오류를 확인하지 않고 사이트가 랩톱에서 실행 된 후에 만 ​​발견되었습니다.

미래에 누군가를 도울 수 있으므로이 게시물에 추가 할 것이라고 생각했습니다.


2

확인해야 할 또 다른 사항은 솔루션 속성 페이지-> 구성 속성-> 구성 아래에 있습니다. 빌드 열 아래의 모든 확인란이 다시 준수해야하는 프로젝트를 확인해야합니다.


1

혼합 된 결과로 이전 솔루션을 시도했습니다. 그러나 빌드-> 클린 솔루션으로 갈 때마다 그것은 나를 위해 작동하는 것 같습니다

그러나 매번 그렇게 해야하는 성가심이 있습니다.


1

나를 위해 빌드 구성 설정으로 인해 발생했습니다. 내 Visual Studio 솔루션에는 C #과 C ++ 프로젝트가 혼합 된 많은 프로젝트가 있습니다. 이제 이상한 이유로 Visual Studio는 기본적으로 빌드 구성 설정에 의해 명백한 C ++ 프로젝트를 빌드하지 않는 것을 선호했습니다. 나는 솔루션에 새로운 C ++ 프로젝트를 추가 한 직후에 그것을 알아 차렸다 . VS가 새로운 C # 프로젝트를 솔루션에 추가하는 동안 왜 같은 접근법을 따르지 않는지 모르겠습니다.

솔루션 탐색기에서 솔루션 파일을 마우스 오른쪽 단추로 클릭-> 컨텍스트 메뉴에서 특성 클릭-> 왼쪽 분할 창에서 구성 특성 선택 노드-> 구성 노드 선택 . 솔루션의 모든 프로젝트 목록이 표시됩니다. 첫 번째 프로젝트 인 LearnD는 C ++ 프로젝트입니다. 첫 번째 행의 빌드 열에있는 확인란을 확인하십시오. 선택 해제되어 있습니다. 이것이 Visual Studio 2010이 마지막으로 성공적으로 빌드 된 이후 일부 변경 사항이 포함 된 C ++ 프로젝트 (F5를 누름)를 빌드하지 않은 이유입니다.

여기에 이미지 설명을 입력하십시오

해당 확인란을 선택하고 솔루션의 빌드 구성 설정을 저장하는 순간 효과가있었습니다. VS가 마지막으로 빌드 한 이후 새로운 변경 사항이 있음을 감지 할 수 있으므로 F5를 누를 때마다 아래 프롬프트가 표시됩니다. 이 프롬프트는 도구 메뉴-> 옵션 하위 메뉴-> 프로젝트 및 솔루션 노드-> 빌드 및 실행 노드 -> "프로젝트가 오래되었을 때 실행 중"의 설정이로 설정되어 있기 때문 Prompt to build입니다. 이 프롬프트가 마음에 들지 않으면로 설정하십시오 Always build.

여기에 이미지 설명을 입력하십시오


1

도구-> 옵션-> 프로젝트 및 솔루션.

  1. "실행 중, 프로젝트가 오래되었습니다"에 대해 항상 빌드 / 프롬프트로 빌드로 설정
  2. "실행시 시작 프로젝트 및 종속성 만 빌드"확인란의 선택을 취소하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.