2012-08-30 2 views
1

apc에 대한 rpm을 생성 중입니다. spec 파일을 쓰는 동안, 나는 컴파일 시간 동안 요구되는 변경을 계속할 수있는 경로가있을 수 있음을 깨달았다. 예를 들면. 이 명령은 빌드하는 동안 실행해야합니다. RPM SPEC 파일의 하드 코드 경로 방지

$ /usr/local/php/bin/phpize 
$ ./configure --with-php-config=/usr/local/php/bin/php-config 

그러나 phpizephp-config 파일의 전체 경로가 변경 될 수 있습니다. 그래서 어떻게 내 의존 파일을 방지 할 수 있도록 하드 코드 내 사양 파일에 안된다. 이 명령은 시간을 구축에 사용되기 때문에

답변

1

는이 문제에 대한 이상적인 솔루션은 여기에 있습니다 : 이러한 명령 또는 경로를 제공 분포

  1. 찾기 패키지는 PHP-설정은 PHP-(STABLE) 패키지로 제공되는 예 Fedora 운영 체제. fedora에서는 yum whatprovides "*/php-config"을 사용하거나 시스템에 이미 설치된 경우 rpm -qf /path/to/command을 사용하여 찾을 수 있습니다.

  2. 당신은 패키지 사양 파일 BuildRequire 태그로 추가 알게되면. 2 단계는 하드 코딩 된 경로를 사용하더라도 spec 파일에서 패키지를 빌드 할 때 항상 경로가 있는지 확인합니다 (최선의 방법은 아닙니다). /의 USR 대신에

  3. 는/당신은 %를 {_ 접두사}, 당신이 RPM을에 구축하고 유통에 사용 가능한 매크로에 달려 사용할 수 있습니다. 매크로 파일에서 경로 매크로를 확인하십시오. 공통 매크로 정의가있는 링크 중 하나는 here입니다.

관련 문제