2010-07-26 3 views
1

두 가지 대상 (모두 설치, 제거)이있는 Makefile이 있습니다. 모든 대상에서 완벽하게 작동하는 $ JAVA_HOME 환경 변수를 사용하려고합니다.하지만 설치 대상이 실행될 때 $ JAVA_HOME 변수가 비어있는 것 같습니다 (터미널에 체크인 했음에도 불구하고). 누구든지 아이디어가 있습니까?

Makefile에서 환경 변수에 대한 액세스가 끊어졌습니다.

all: 
     # This works good 
     @echo ${JAVA_HOME} 


ifeq ($(UNAME), Linux) 
install: 
     # This prints a blank line. 
     @echo ${JAVA_HOME} 
     # Doing stuff here 

uninstall: 
     # Doing stuff here 
endif 


감사합니다,
크리스

+0

어떤 쉘/OS를 사용하고 있습니까? – Sniggerfardimungus

+0

저는 민트 리눅스에서 bash를 사용하고 있습니다. – Chrisc

답변

0

난 당신이 게시 한 내용에 문제가 표시되지 않습니다,하지만 방법은 당신이 기여 요인이 될 수 있도록 호출하기 전에 JAVA_HOME을 설정합니다. 내보내기를 사용하여 환경 변수를 만드십니까? 그렇지 않은 경우, make 프로세스가 환경의 해당 부분을 상속하지 않을 수 있습니다.

+0

그래, 나는 그것을/etc/profile 파일에 넣음으로써 다음 줄을 사용하고있다 : export JAVA_HOME =/usr/lib/jvm/jdk1.5.0_22 – Chrisc

+0

좋아, 나는 내 문제로 생각한다. "설치"대상을 "sudo"로 실행하고 모든 대상을 일반 사용자로 실행합니다. – Chrisc

관련 문제