Cygwin Make Error : *** 대상 패턴에는`%'가 포함되지 않습니다.
문제
Cygwin Make.exe 버전을 사용하여 (RE) 빌딩하는 동안이 오류가 발생했습니다. 3.81.
Error : *** target pattern contains no `%'.
해결책
이 오류는 a의 존재 때문입니다 ":"
. 따라서 더 이상 Windows 경로를 지원하지 않습니다. 버전 3.80을 다운로드하고 교체해야합니다 make.exe
에서 \bin
예배 규칙서.
분명히 그것은 필요합니다 cygintl12.dll
도.
다른 팁
3.80을 만들기위한 롤백 (GEANT4)
cd /usr/bin
mv make.exe make_381.exe
wget http://geant4.cern.ch/support/extras/cygwin/make.exe
chmod +x make.exe
설치
libintl2
필요한 Cygwin 설정에서cygintl-2.dll
Linux 또는 OSX에서 프로젝트를 구축하려고 할 때 동일한 오류가 발생했는데, 이전에는 Windows 시스템에 구축되었으며 일부가 있습니다. .OD 출력 폴더에 매달려있는 파일.
일단 수동으로 삭제하면 .OD 파일 문제가 해결되었습니다. 분명히 내 IDE (이 경우 Codelite)의 "깨끗한"명령은 .OD 파일.
드라이브 편지에 따른 대장의 존재로 인해 가능성이 높습니다. 예를 들어 고려하십시오
build : $(NativeHeaders)/*
만약에
NativeHeaders=../../../cpp/generated
그러면 모든 것이 잘되었지만
NativeHeaders=C:/dev/folder/cpp/generated
당신이 얻는 오류가 발생합니다.
명령의 시작 부분에 탭 ( t) 문자가 없었기 때문에이 오류가 발생했습니다. VIM 세트에 ExpandTab을 사용하여 4 개의 공간으로 탭 문자를 교체했습니다. 내가 끄고 공백을 탭으로 변경했을 때 고정되었습니다.
나는 가졌다 target pattern contains no '%'
Cygwin을 사용하여 Android NDK로 구축하는 동안 오류.
다음 링크가 도움이되었습니다.
- '대상 패턴 누락. 중지.'
- '여러 대상 패턴. 중지.'
- '대상 패턴에는'%'가 포함되어 있지 않습니다. 중지.'
- '혼합 내재 및 정적 패턴 규칙. 중지.'
이들은 기형 정적 패턴 규칙에 대해 생성됩니다. 첫 번째는 규칙의 대상 섹션에 패턴이 없다는 것을 의미합니다. 두 번째는 대상 섹션에 여러 패턴이 있음을 의미합니다. 세 번째는 대상이 패턴 문자 (%)를 포함하지 않음을 의미합니다. 네 번째는 정적 패턴 규칙의 세 부분 모두 패턴 문자 (%)를 포함한다는 것을 의미합니다. 처음 두 부분 만 있어야합니다. 이러한 오류가 표시되고 정적 패턴 규칙을 작성하려고하지 않으면 대상 및 전제 조건 목록의 변수 값을 확인하여 콜론이 포함되어 있지 않은지 확인하십시오. 보다 정적 패턴 규칙의 구문.
따라서 내 솔루션에는 시스템 변수를 Windows 형식에서 UNIX 형식으로 변경하는 것이 포함되었습니다.
- 대신에
C:\Android\android-ndk-r10c
, 나는 사용했다/cygdrive/c/Android/android-ndk-r10c
NDK 경로의 경우.
마찬가지로 NDK 프로젝트 경로를 변경했습니다 /cygdrive/c/Android/project/src/main/jni
.
제 경우에는이 오류가 발생했을 때 Cygwin에서 CMAKE를 사용하고있었습니다. CMAKE의 Windows 버전이 실행되었습니다. 그 후, Windows 경로는 Make 파일에 사용되었습니다. 설정 프로그램을 통해 Cygwin의 CMAKE 버전을 설치하여 작동했습니다.
빌드 디렉토리에 ":" "Server : Port"라는 디렉토리를 만든 수은 체크 아웃으로 인해 발생하는 Linux 에서이 문제가있었습니다.
make _381과 호환되도록 Make 파일에서 다음을 변경해야했습니다.
전에:
Arduino_base_dir = C : 프로그램/Arduino
지금:
Arduino_base_dir = 프로그램/Arduino
Eclipse C/C ++를 실행하고 Windows에서 Cygwin에서 파일을 참조하는 경우 C :/Cygwin/Bin 또는 C :/Cygwin64/Bin이 Windows Path 환경에서 선호하는 컴파일러 도구를 방문한 경우 시도하십시오.
예 : 경로 =; c : yagarto bin; c : yagarto-tools bin; c : cygwin64 bin;
변경 한 후에는 Eclipse를 종료하고 다시 시작하여 발효되도록 다시 시작하십시오 (종료하지 않고 Eclipse를 다시 시작하면 문제가 해결되지 않습니다.
내 프로젝트에서 OBJ 폴더는 아마도 손상 되었고이 오류가 발생했습니다. 수동으로 OBJ 폴더를 삭제했습니다. 그런 다음 NDK 건물은 잘 완성되었습니다.