Bug 749938

Summary: Can't update geos RPM due to dependency issue...
Product: [Fedora] Fedora EPEL Reporter: Ryan <ryan.redhat>
Component: python-basemapAssignee: Jef Spaleta <jspaleta>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: el6CC: jspaleta, tcallawa
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-12-09 01:02:44 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
output of rpmbuild --rebuild python-basemap-0.99.4-9.el6.src.rpm
none
List of packages intalled on system doing the build on none

Description Ryan 2011-10-28 23:17:00 UTC
Description of problem:
[root@crex rmnelson]# rpm -Fvh geos-3.3.1-1.el6.i686.rpm geos-devel-3.3.1-1.el6.i686.rpm 
error: Failed dependencies:
        libgeos-3.2.2.so is needed by (installed) python-basemap-0.99.4-8.el6.i686


Version-Release number of selected component (if applicable):
[root@crex rmnelson]# uname -a
Linux crex.ndc.nasa.gov 2.6.32-131.17.1.el6.i686 #1 SMP Thu Sep 29 10:23:40 EDT 2011 i686 i686 i386 GNU/Linux
[root@crex rmnelson]# cat /etc/redhat-release 
Red Hat Enterprise Linux Workstation release 6.1 (Santiago)


How reproducible:
Try to update it with python-basemap-0.99.4-8.el6.i686 installed

Comment 2 Tom "spot" Callaway 2011-10-29 23:19:34 UTC
Both of these packages (geos and python-basemap) are in EPEL, as opposed to RHEL.

There is an updated python-basemap package in updates-testing that resolves this dependency issue:
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2011-4717

Comment 3 Ryan 2011-10-31 16:44:51 UTC
Work for me.

--snip cmd--
[root@crex rmnelson]# rpm -Fvh 
geos-3.3.1-1.el6.i686.rpm                       geos-python-3.3.1-1.el6.i686.rpm                .gnome2/                                        python-basemap-0.99.4-9.el6.i686.rpm            python-basemap-examples-0.99.4-9.el6.i686.rpm
geos-devel-3.3.1-1.el6.i686.rpm                 geos-ruby-3.3.1-1.el6.i686.rpm                  .mozilla/                                       python-basemap-debuginfo-0.99.4-9.el6.i686.rpm  .xemacs/
[root@crex rmnelson]# rpm -Fvh ./*.rpm
Preparing...                ########################################### [100%]
   1:geos                   ########################################### [ 25%]
   2:python-basemap         ########################################### [ 50%]
   3:python-basemap-examples########################################### [ 75%]
   4:geos-devel             ########################################### [100%]
--end snip--

Comment 4 Ryan 2011-11-01 16:53:58 UTC
Actually when trying to build from source to determine if the following two packages are build with it I get the next following errors:

python-basemap-data-0.99.4-1.el5.noarch.rpm
python-basemap-data-hires-0.99.4-1.el5.noarch.rpm

--snip cmd--
[root@madiba SPECS]# rpmbuild -ba python-basemap.spec
....removed stuff...
Processing files: python-basemap-0.99.4-9.el6.i686
error: File not found: /root/rpmbuild/BUILDROOT/python-basemap-0.99.4-9.el6.i386/usr/lib/python2.6/site-packages/dbflib
error: File not found: /root/rpmbuild/BUILDROOT/python-basemap-0.99.4-9.el6.i386/usr/lib/python2.6/site-packages/dap
error: File not found: /root/rpmbuild/BUILDROOT/python-basemap-0.99.4-9.el6.i386/usr/lib/python2.6/site-packages/dbflibc.so
error: File not found: /root/rpmbuild/BUILDROOT/python-basemap-0.99.4-9.el6.i386/usr/lib/python2.6/site-packages/shapelib
error: File not found: /root/rpmbuild/BUILDROOT/python-basemap-0.99.4-9.el6.i386/usr/lib/python2.6/site-packages/shapelibc.so
error: File not found: /root/rpmbuild/BUILDROOT/python-basemap-0.99.4-9.el6.i386/usr/lib/python2.6/site-packages/shptree.so
Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.IZPGDx
....removed stuff...
--end cmd--

Comment 5 Tom "spot" Callaway 2011-11-01 19:55:54 UTC
Without your full log, I have no idea why that build failed.

Comment 6 Ryan 2011-11-01 21:14:22 UTC
Created attachment 531200 [details]
output of rpmbuild --rebuild python-basemap-0.99.4-9.el6.src.rpm

Comment 7 Ryan 2011-11-01 21:15:02 UTC
Sorry about that, added an attachment with the output.

Comment 8 Jef Spaleta 2011-11-02 00:50:38 UTC
On that system where you are compiling... is pydap and pyshapelib installed from packages?  I'm not aware of those being available as Fedora or EPEL packages.

If basemap is already installed on the system where you are trying to build the package, the module checks might fail in unexpected ways as well..seeing that modules are on the system and skipping their build.

Are you doing this build in a clean build environment like under a local mock?

-jef

Comment 9 Ryan 2011-11-02 01:11:32 UTC
No packages with those names however these are similar names.

--snip cmd--
[rmnelson@gobo ~]$ rpm -qa |grep shape
shapelib-devel-1.2.10-21.20060304cvs.x86_64
shapelib-1.2.10-21.20060304cvs.x86_64
[rmnelson@gobo ~]$ yum search dap |grep py
python-ldap.x86_64 : An object-oriented API to access LDAP directory servers
python-ldaphelper.noarch : A python wrapper for LDAP search results
python-protocols.x86_64 : Open Protocols and Component Adaptation for Python
python-psycopg2.x86_64 : A PostgreSQL database adapter for Python
python-psycopg2-doc.x86_64 : Documentation for psycopg python PostgreSQL
[rmnelson@gobo ~]$ 
--end cmd--

And yes python-basemap is already installed on it.

--snip cmd2--
[rmnelson@gobo multiboot2]$ rpm -qa |grep python-base
python-basemap-examples-0.99.4-8.el6.x86_64
python-basemap-data-0.99.4-2.el6.noarch
python-basemap-0.99.4-8.el6.x86_64
python-basemap-data-hires-0.99.4-2.el6.noarch
--end cmd2--

I can attempt tomorrow to build it in an environment w/o basemap installed.

Comment 10 Ryan 2011-11-02 01:16:26 UTC
Created attachment 531217 [details]
List of packages intalled on system doing the build on

Comment 11 Tom "spot" Callaway 2011-11-02 14:28:14 UTC
First thing: Stop building packages as root. That is incredibly dangerous and unnecessary.

Second thing: I think you'll need to remove python-basemap-* in order to build this code on a running system, because it isn't very smart, and checks for the presence of some of its modules at the beginning, and if it finds them, it doesn't bother to build them again:

checking to see if required version of pydap installed ..
pydap installed, checking version ...
pydap version OK, will not be installed
checking to see if httplib2 installed ..
httplib2 installed
checking to see if pyshapelib installed ..
pyshapelib installed

But really, as Jef pointed out, you should be building this code using mock, which will setup a clean buildroot and build the packages in a controlled environment. http://fedoraproject.org/wiki/Projects/Mock

Comment 12 Ryan 2011-12-09 01:02:44 UTC
Sorry I didn't get back.  The new package fixes my problem.  I find it an issue to use mock as the same %defines% are not in RHEL.  Mock works fine with the Fedora defs but I would really like it to use our own repo's.

That is neither here nor there for this ticket.

Resolved.