Bug 442915

Summary: missing dependencies for blas-devel and lapack-devel
Product: [Fedora] Fedora Reporter: Satish Balay <balay>
Component: lapackAssignee: Tom "spot" Callaway <tcallawa>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 8   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 3.1.1-4.fc9 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-07-09 21:48: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:
Embargoed:

Description Satish Balay 2008-04-17 15:37:43 UTC
Description of problem:

Invariably users of blas/lapack have either of the above devel packages
installed - but they dont' work at compile time - because of missing dependencies:

Version-Release number of selected component (if applicable):
blas-devel-3.1.1-2.fc8
lapack-devel-3.1.1-2.fc8
gcc-gfortran-4.1.2-33

Additional info:

Please add the following dependencies.

 - lapack-devel depends on blas-devel

The reason for the above is obvious. lapack is generally used as:
gfortran -llapack -lblas

 - blas-devel depends on gcc-gfortran [or more apprioriately libgfortran.so,.a]
   
This one is not that obvious - but its the correct dependency. Normally folks
use blas/lapack from fortran only - so gfortran is always there.

But one can use blas/lapack from C aswell - and many software packages do this.
In this case - one has to do:

'gcc -llapack -lblas -lgfortran'

Ideally you would have a separate package libgfortran-devel which has
libgfortran.a, libgfortran.so. In the absence of this package - the correct
dependency is on gcc-gfortran


Note: This problem probably exists on RHEL versions aswell [I know RHEL5 has
this problem]. It would be good if it can be fixed aswell.

Comment 1 Satish Balay 2008-04-17 15:53:21 UTC
Request for libgfortran-devel at:

https://bugzilla.redhat.com/show_bug.cgi?id=442919

Comment 2 Fedora Update System 2008-07-08 20:13:41 UTC
lapack-3.1.1-4.fc8 has been submitted as an update for Fedora 8

Comment 3 Fedora Update System 2008-07-08 20:14:40 UTC
lapack-3.1.1-4.fc9 has been submitted as an update for Fedora 9

Comment 4 Fedora Update System 2008-07-09 21:48:42 UTC
lapack-3.1.1-4.fc9 has been pushed to the Fedora 9 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 5 Fedora Update System 2008-07-09 21:50:12 UTC
lapack-3.1.1-4.fc8 has been pushed to the Fedora 8 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 6 Satish Balay 2008-07-10 15:08:18 UTC
Thanks for fixing this dependency problem. Its appears to work as expected on
Fedora9. [I have both x86_64 & i386 libs installed - and both show proper
dependencies]


Comment 7 Satish Balay 2008-07-10 15:17:53 UTC
Actually I spoke a bit too soon.

This is misbehaving in multilib case.. On attempting to install
lapack-devel.i386 - yum prompts to install blas-devel.x86_64 - instead of
blas-devel.i386

I guess gcc-gfortran.x86_64 is fine - as it provides both 32bit and 64bit
libgfortran.a/so files


******************************************************************************
[root@asterix ~]# yum install lapack-devel.i386
Loaded plugins: changelog, refresh-packagekit
local                                                                   |  951 B
    00:00     
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package lapack-devel.i386 0:3.1.1-4.fc9 set to be updated
--> Processing Dependency: blas-devel = 3.1.1-4.fc9 for package: lapack-devel
--> Running transaction check
---> Package blas-devel.x86_64 0:3.1.1-4.fc9 set to be updated
--> Processing Dependency: gcc-gfortran for package: blas-devel
--> Running transaction check
---> Package gcc-gfortran.x86_64 0:4.3.0-8 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Installing:
 lapack-devel            i386       3.1.1-4.fc9      updates           4.1 M
Installing for dependencies:
 blas-devel              x86_64     3.1.1-4.fc9      updates           182 k
 gcc-gfortran            x86_64     4.3.0-8          fedora            4.2 M

Transaction Summary
=============================================================================
Install      3 Package(s)         
Update       0 Package(s)         
Remove       0 Package(s)         

Total download size: 8.5 M
Is this ok [y/N]: 



Comment 8 Tom "spot" Callaway 2008-07-10 15:32:12 UTC
I'm not sure I can reasonably resolve this. 

With the new rpm, I can specify that Requires: foo-devel(x86-32) is what I want,
but I can't do this for any existing releases (F-8, F-9).

Comment 9 Satish Balay 2008-07-10 15:41:17 UTC
(In reply to comment #8)
> I'm not sure I can reasonably resolve this. 
> 
> With the new rpm, I can specify that Requires: foo-devel(x86-32) is what I want,
> but I can't do this for any existing releases (F-8, F-9).

Ok. I guess this new rpm is currently in rawhide and will be in F-10/RHEL6. So
this fix to blas/lapack will be in upcoming releases. This is fine by me.

Hopefully libgfortran-devel split takes place before that [as per #442919] and
blas-devel/lapack-devel packages are updated with this change aswell.