Windows 용 Eclipse CDT 개발자 키트 (87MB)를 다운로드했습니다. MinGW 및 msys도 설치했습니다. 또한 이것을 PATH에 추가했습니다 : C : \ msys \ 1.0 \ bin;C : \ mingw \ bin. 그 후 컴퓨터를 다시 시작했습니다. cmd에서 "make --version"유형으로 확인했는데 작동합니다.
그러나 어떤 이유로 든 C 프로젝트를 컴파일 할 수 없습니다. 바이너리 파일을 얻지 못하고 COnsole에서 다음 항목 만 얻습니다.
**** Build of configuration Default for project XXX ****
make all
make: *** No rule to make target `all'. Stop.
이것으로 도와주세요.
-
답변 # 1
-
답변 # 2
참고로 CDT 빌드 옵션을 구성 할 수 있습니다. 나는 같은 오류 메시지를 가지고 있었지만 (만약make 목표를 가졌지 만 "all"이라고하지는 않았다)이 해결책을 찾았다 (Galileo + CDT 용) :
프로젝트를 마우스 오른쪽 버튼으로 클릭하고속성을 선택하십시오. 속성 대화 상자가 나타나고 특정 빌드 옵션을 설정할 수있는C/C ++ 빌드옵션이 표시됩니다. 이 항목을 강조 표시하면 속성 페이지가 나타납니다. 수정할 구성을 선택한 다음 아래 섹션에서빌더 설정및동작탭이 표시됩니다. 원하는행동탭입니다. 이 섹션에서는 대상 이름 지정 (기본값은 "all") 또는 자동 빌드 끄기를 포함하여 빌드 설정 및 워크 벤치 설정에 대한 환경 설정을 지정할 수 있습니다.
이것은 CDT를 사용하기 시작했을 때 엄청나게 도움이되었습니다. 내 소스 코드는 빌드 영역과 분리되어 있으며 구성 할 때까지 makefile이 없습니다. 구성 할 때 기본 대상 이름은 "all"이 아니라 명시 적으로 "default"입니다. 내가하기 전에 Eclipse가 프로젝트에서 오류를보고하게하는 것은 성가신 일이었습니다. 개발 환경에 맞게 환경을 설정하는 것은 놀라운 일이었습니다. HTH.
-
답변 # 3
프로젝트 속성->C/C ++ 빌드를 마우스 오른쪽 버튼으로 클릭하고 "빌더 설정"에서 "메이크 파일 자동 생성"옵션을 확인한 다음 "빌더 유형"옵션을 "내부 빌더"로 선택하십시오. "를 클릭 한 다음 확인을 클릭하면 문제가 해결되었습니다!
-
답변 # 4
이 오류에 많은 시간을 보냈으며 이제 MinGW와 msys를 설치하기 전에 컴파일되지 않은 프로젝트가 생성되었다는 것을 깨달았습니다. 전에 makefile이 없습니다. 그리고 makefile에 링크가있는 포함 폴더가 없었습니다. 그것이 내가 컴파일 할 수없는 이유입니다. 이제 새 프로젝트를 만들면 괜찮습니다.
그러나 이전 프로젝트의 makefile 경로를 추가 할 수있는 방법이 있는지 궁금합니다.
감사합니다
-
답변 # 5
makefile을 보거나 누락 된 경우 makefile을 만들어야합니다. 이것이 기본 메이크 파일입니다 :
CXXFLAGS = -O2 -g -Wall -fmessage-length=0 OBJS = main.cpp LIBS = TARGET = main.exe $(TARGET): $(OBJS) $(CXX) -o $(TARGET) $(OBJS) $(LIBS) all: $(TARGET) clean: rm -f $(OBJS) $(TARGET)
관련 자료
- java - eclipse 2020-12의 gradle 오류 - task : compilejava failed unrecognized option : -h
- python - "valueerror - 대상 크기 (torchsize ([128]))가 입력 크기 (torchsize ([128, 1])))와 같아야합니다"오류를 수정하려면 어떻게해야합니까?
- python - Eclipse에서 "nodejs를 찾을 수 없음"오류
- java - Eclipse에서 Project Lombok 사용시 "데이터를 유형으로 확인할 수 없습니다"오류가 발생합니다
- Java Eclipse의 오류 13, 어떻게 수정합니까?
- java - JFuzzyLogic은 코드가 다른 IDE에서 잘 작동하는 동안 Eclipse IDE에서 오류를 제공합니다
- npm - 포착되지 않은 오류 - 'target'은 필수 옵션입니다날씬한
- spring boot - Intellij에서 Kotlin을 업데이트 한 후 Eclipse에서 애플리케이션 실행 오류
- ios - 오류 - 파일 목록의 내용을로드 할 수 없습니다 : '/ 대상 지원 파일 /pods-xx/pods-xx-frameworks-debug-input-filesxcfilelist'(대상 'xx')
- tensorflow - 모델 대상 확인시 오류 - 모델에 전달하는 numpy 배열 목록이 모델이 예상 한 크기가 아닙니다
나중에 참조 할 수 있도록 makefile로 기존 프로젝트를 가져 오려는 경우 ...
makefile에 "all"규칙이없는 경우이 메시지가 계속 나타납니다. "Makefiles 자동 생성"옵션을 사용하면이를 자동으로 처리해야합니다. 메이크 파일을 만들지 않으려면 최소한 3 가지 간단한 옵션이 있습니다 ...
옵션 1
해당 이름으로 규칙을 사용하지 않으려면, twokats 'solution을 사용하십시오. 여기에 설명이 있습니다.
<올>프로젝트 속성으로 이동->C/C ++ 빌드->동작 탭
빌드 빌드 (증분 빌드)를 확인했습니다.
빌드 (증분 빌드) 옆의 텍스트 상자에서 "모두"를 제거하십시오.
이것은 Eclipse에게 당신이 "all"이라는 make 타겟을 사용하고 있지 않다는 것을 알려준다. 어떤 이유로 든 이것이 기본값입니다.
옵션 2
Etiennebr의 makefile과 비슷한 것을 사용하십시오. 참고로,
all: $(TARGET)
줄은 이클립스가 찾을 수 없다고 불평하는 규칙입니다.옵션 3
선택한 규칙 이름으로 "all"을 대체하고 해당 규칙을 메이크 파일에 포함 시키십시오.