I've built an rpm with a build dependency on python => 2.4. The buildrequires is explicitly stated in the .spec, and the build proceeds uneventfully. However, I cannot install the resulting rpm--on the very machine where I built it. The message is "requires python(abi)." Meanwhile:
rpm -q --whatprovides "python(abi)"
returns "python-2.4.2-3.2.1," which is installed.
How can this be? Is this an rpm problem? A python problem? Or some kind of problem with my package source?
Thanks in advance for any guidance.
PS: The package is a new Gnome screen reader called Orcaunder active development by Sun.
Janina Sajka Phone: +1.240.715.1272 Partner, Capital Accessibility LLC http://CapitalAccessibility.Com
Marketing the Owasys 22C talking screenless cell phone in the U.S. and Canada--Go to http://ScreenlessPhone.Com to learn more.
Chair, Accessibility Workgroup Free Standards Group (FSG) janina@freestandards.org http://a11y.org
On Tue, 2006-05-16 at 15:08 -0400, Janina Sajka wrote:
I've built an rpm with a build dependency on python => 2.4. The buildrequires is explicitly stated in the .spec, and the build proceeds uneventfully. However, I cannot install the resulting rpm--on the very machine where I built it. The message is "requires python(abi)." Meanwhile:
rpm -q --whatprovides "python(abi)"
returns "python-2.4.2-3.2.1," which is installed.
How can this be? Is this an rpm problem? A python problem? Or some kind of problem with my package source?
It certainly can't be a Python problem; it's got to be RPM or your source, and I'll hope it's your source.
First of all, I'll assume you're using FC5, especially given your Python package rev number.
Second, On my FC5 development machine, there are a number of packages that require python(abi) = 2.4, but I don't see any that use a "=>" operator the way you do. If it's good enough for them, perhaps it might be for you too.
Third, if you're willing to settle for python(abi) = 2.4, then you might want to look at the source for one of those packages and copy the Requires line out of the .spec file directly via cut-and-paste, and see if that solves your problem.
Fourth, if you want to get a list of the names of such packages, here's how to do it in Bash. (You could certainly figure it out yourself in a minute or two, but since I already wrote it, it's faster to cut-and-paste sometimes):
rpm -q -a > rpm-q-a for r in $(< rpm-q-a ); do rpm -q --requires $r | fgrep "python(abi)" && echo "^^^^ PKG: $r" done
On Tue, 16 May 2006 15:08:39 -0400, Janina Sajka wrote:
I've built an rpm with a build dependency on python => 2.4. The buildrequires is explicitly stated in the .spec, and the build proceeds uneventfully. However, I cannot install the resulting rpm--on the very machine where I built it. The message is "requires python(abi)."
The full and unmodified error message may be relevant. Your quoted error message contains a period at the end which could be a cut'n'paste error, a mistake in the .spec file or the result of even a different bug.
You can also show us the output of:
rpm -q --requires your-binary-rpm-here
Meanwhile:
rpm -q --whatprovides "python(abi)"
returns "python-2.4.2-3.2.1," which is installed.
On Wed, 2006-05-17 at 13:18 +0200, Michael Schwendt wrote:
On Tue, 16 May 2006 15:08:39 -0400, Janina Sajka wrote:
I've built an rpm with a build dependency on python => 2.4. The buildrequires is explicitly stated in the .spec, and the build proceeds uneventfully. However, I cannot install the resulting rpm--on the very machine where I built it. The message is "requires python(abi)."
The full and unmodified error message may be relevant. Your quoted error message contains a period at the end which could be a cut'n'paste error, a mistake in the .spec file or the result of even a different bug.
You can also show us the output of:
rpm -q --requires your-binary-rpm-here
rather:
rpm -qp --requires <path-to-rpm-file>
Nils