Description of problem: rebuilt package requires /usr/local/bin/perl to install Version-Release number of selected component (if applicable): httpd-2.0.47-4.src.rpm How reproducible: Steps to Reproduce: 1. Rebuild srpm 2. attempt to install 3. Actual results: > sudo rpm -Uv /u/kdebisschop/rpm/RPMS/i386/httpd-*2.0.47-4.i386.rpm /u/kdebisschop/rpm/RPMS/i386/mod_ssl-2.0.47-4.i386.rpm Password: error: Failed dependencies: /usr/local/bin/perl is needed by httpd-devel-2.0.47-4 Expected results: > sudo rpm -Uv --nodeps /u/kdebisschop/rpm/RPMS/i386/httpd-*2.0.47-4.i386.rpm /u/kdebisschop/rpm/RPMS/i386/mod_ssl-2.0.47-4.i386.rpm Preparing packages for installation... mod_ssl-2.0.47-4 httpd-2.0.47-4 warning: /etc/httpd/conf/httpd.conf created as /etc/httpd/conf/httpd.conf.rpmnew httpd-devel-2.0.47-4 httpd-manual-2.0.47-4 Additional info:
It's a corner case - I can fix it in my local build by changing my search path. (I have a symlink from /usr/local/bin/perl to /usr/bin/perl because we get scripts that require it. By chance, /usr/local/bin comes ahead of /usr/bin in my path, which I think causes configure to AC_SUBST that instead of /usr/bin/perl which of course the copy registered in the rpm db) Maybe not worh fixing now that I see the cause.
It's either WONTFIX or NOTABUG :) This is the nature of autoconf really, you should just make sure /usr/bin is first in your PATH when building RPMs.
I have to disagree with comment #2. If rpmbuild depends on autoconf to resolve dependencies, and autoconf sometimes gives an unexpected result I(but technically correct -- eg, I have a perfectly valid /usr/;local/bin/perl), then it's rpm's responsibility to recognize the alternative/alias to the dependency-requirement that satisfies the rpm database. Telling me to rearrange my PATH is not acceptable -- that always leads to conflicts ("the other toolmaker tells me to do the opposite..")
Well, you could file a bug against RPM or redhat-rpm-config to have %configure or something like that enforce a sanitized system-directories-only PATH. But you'd probably be better of getting consensus on rpm-list or fedora-devel-list about which behaviour is correct. If you're building RPMs to redistribute, doing so on a vanilla install is standard practice. The package configure scripts may pick up libraries etc in /usr/local otherwise, regardless of $PATH.