애플리케이션이 구성을 시도 중입니다.
sudo make configure
(cd /opt/ioapi-3.2/ioapi ; sed -e 's|IOAPI_BASE|/opt/ioapi-3.2|' -e 's|LIBINSTALL||' -e 's|BININSTALL||' -e 's|IOAPI_DEFS||' -e 's|NCFLIBS|-L/opt/netcdf/lib -lnetcdff -L/opt/netcdf/lib -lnetcdf|' -e 's|MAKEINCLUDE|include /opt/ioapi-3.2/ioapi/Makeinclude|' -e 's|PVMINCLUDE|include |' < Makefile..sed > Makefile )
/bin/sh: Makefile..sed: No such file or directory
make: *** [Makefile:211: configure] Error 1
명령의 마지막 부분이 수행해야 하는 작업과 오류가 발생하는 이유를 이해할 수 없습니다.
출력은 make -n configure
다음과 같습니다
(cd /home/centos/ioapi-3.2/ioapi ; sed -e 's|IOAPI_BASE|/home/centos/ioapi-3.2|' -e 's|LIBINSTALL||' -e 's|BININSTALL||' -e 's|IOAPI_DEFS||' -e 's|NCFLIBS|-lnetcdff -lnetcdf|' -e 's|MAKEINCLUDE|include /home/centos/ioapi-3.2/ioapi/Makeinclude|' -e 's|PVMINCLUDE|include |' < Makefile..sed > Makefile )
(cd /home/centos/ioapi-3.2/m3tools ; sed -e 's|IOAPI_BASE|/home/centos/ioapi-3.2|' -e 's|LIBINSTALL||' -e 's|BININSTALL||' -e 's|IOAPI_DEFS||' -e 's|NCFLIBS|-lnetcdff -lnetcdf|' -e 's|MAKEINCLUDE|include /home/centos/ioapi-3.2/ioapi/Makeinclude|' -e 's|PVMINCLUDE|include |' < Makefile..sed > Makefile )
답변1
Makefile.template
프로젝트 파일 보기ioapic-3.2
GitHub에서, 표시되는 명령은 sed
변수를 사용한 결과임이 분명합니다.make
SEDCMD
SEDCMD = \
-e 's|IOAPI_BASE|$(BASEDIR)|' \
-e 's|LIBINSTALL|$(LIBINST)|' \
-e 's|BININSTALL|$(BININST)|' \
-e 's|IOAPI_DEFS|$(IOAPIDEFS)|' \
-e 's|NCFLIBS|$(NCFLIBS)|' \
-e 's|MAKEINCLUDE|include $(IODIR)/Makeinclude|' \
-e 's|PVMINCLUDE|include $(PVMINCL)|'
이와 같이:
configure: ${IODIR}/Makefile ${TOOLDIR}/Makefile
(cd $(IODIR) ; sed $(SEDCMD) < Makefile.$(CPLMODE).sed > Makefile )
(cd $(TOOLDIR) ; sed $(SEDCMD) < Makefile.$(CPLMODE).sed > Makefile )
보시다시피 변수라는 변수를 읽으려고 시도하고 있습니다 Makefile.$(CPLMODE).sed
. 해당 CPLMODE
변수는 여러 번 언급되었습니다.댓글에서Makefile에 있지만 기본값으로 설정하지 마십시오.
이 변수의 유효한 값은 nocpl
, cpl
또는 입니다 pncf
. 저장소의 파일에는 Makefile을 사용자 정의하라고 나와 있는데, 여기에는 프로젝트의 최상위 디렉터리에 호출되는 복사본을 만든 다음 이를 수정하는 작업이 README.txt
포함된다고 가정해야 합니다 .Makefile.template
Makefile
필요한 모든 수정 사항을 적용하지 않은 것 같습니다.