내 컴퓨터에 루트 액세스 권한이 없어서 홈 폴더에 로컬로 GiNaC라는 라이브러리를 설치하려고 합니다.
나는 이 튜토리얼을 사용한다http://www.ginac.de/tutorial/Configuration.html#Configuration. 마지막에 예제가 있습니다(공유 라이브러리를 비활성화할 필요가 없으며 특정 컴파일러가 필요하지 않습니다).
불행하게도 만약 내가 그렇게 한다면
export CPPFLAGS="$(CPPFLAGS) -I$/home/xxx/include"
./configure
결과는 다음과 같습니다.
...
checking for g++... g++
checking whether the C++ compiler works... no
configure: error: in `/home/redies/ginac-1.6.2':
configure: error: C++ compiler cannot create executables
See `config.log' for more details
config.log에 줄이 있습니다
CPPFLAGS='CPPFLAGS: command not found -I$/home/xxx/include'
어떤 아이디어가 있나요?
답변1
튜토리얼에 버그가 있습니다. 쉘에서 변수 확장은 대괄호가 아닌 중괄호를 사용하므로 ${CPPFLAGS}
대신 작성해야 합니다 $(CPPFLAGS)
.교정기 제거, 심지어. 또한 $HOME
해당 값으로 바꾸는 경우 $
이동해야 합니다( $
변수 이름 뒤에는 "값 가져오기"를 의미함).
export CPPFLAGS="$CPPFLAGS -I/home/xxx/include"
CPPFLAGS
아, 그리고 환경에 이전 값이 없으면 다음과 같이 작성할 수 있습니다 export CPPFLAGS="-I/home/xxx/include"
(그러나 two 를 사용해도 문제가 없으며 $CPPFLAGS
변수가 설정된 적이 없으면 값이 비어 있게 됩니다).
답변2
추가 CPPFLAGS 값이 없으면 이것이 작동할 것이라고 생각합니다.
CPPFLAGS="-I/home/xxx/include" ./configure
./configure --help
또한 이 특정 구성 스크립트에 원하는 작업을 수행하는 명령줄 플래그가 있는지 확인하기 위해 실행해야 한다고 생각합니다 . 일반적인 구성 스크립트에는 J. Random Non-root-user가 $HOME 또는 다른 위치에 설치되도록 허용하는 다양한 옵션이 있습니다.