Bug 156517 - sci-libs/mkl-8.1.014 fails w/ USE=fortran95
Bug#: 156517 Product:  Gentoo Linux Version: 2006.1 Platform: x86
OS/Version: Linux Status: RESOLVED Severity: normal Priority: P1
Resolution: FIXED Assigned To: sci@gentoo.org Reported By: jmmf@mat.puc.cl
Component: Ebuilds
URL: 
Summary: sci-libs/mkl-8.1.014 fails w/ USE=fortran95
Keywords:  
Status Whiteboard: 
Opened: 2006-11-28 08:01 0000
Description:   Opened: 2006-11-28 08:01 0000
emerge -av mkl fails when building "lapack" library just after building "blas"
(libmkl_blas95.a) with lots and lots of errors (I'll attach the full output log
+ "emerge --info" later) if one uses the "fortran95" USE variable. (Intel
Fortran Compiler v9.1.040 (dev-lang/ifc-9.1.040) was previously installed
flawlessly.)

I guess it's failing because both libraries are being compiled with "gfortran"
instead of "ifort", despite the fact "ifort" IS installed and usable, but I
don't know how to make "mkl" use "ifort". ("ifc" USE flag is set in make.conf
since I installed the system.)

If I clear the "fortran95" USE flag then it compiles flawless, but I need those
libraries because of "ifc" USE flag, my system lacks "f77" or "g77".

------- Comment #1 From José Miguel Morales F: 2006-11-28 08:10:12 0000 -------
Created an attachment (id=102921) [details]
Full failed emerge output. (Warning: 1846 lines)

emerge -aDNtv mkl

------- Comment #2 From José Miguel Morales F: 2006-11-28 08:16:45 0000 -------
Created an attachment (id=102922) [details]
My emerge --info output...

emerge --info

------- Comment #3 From José Miguel Morales F: 2006-11-28 22:40:54 0000 -------
I think I've got it !!!

   In order to make it compile with USE="fortran95", I just had to chdir into
"/usr/i686-pc-linux-gnu/gcc-bin/4.1.1" (4.1.1 or active gcc version), and
temporarily rename "gfortran" link to something else during emerging operation
of "mkl", so it won't be detected (nor used) by the emerging process. (And of
course, had to restablish it afterwards...)

   As for the impossibility of cleanly choosing "ifort" in the first place, I
think it's related to "eselect-compiler" being masked. (See Bug #143697,
amongst others.)

   Can't be sure at which point (if ANY at all, oh my poor memory...) I was
asked by emerge to do an "eselect compiler <blah, blah...> ifort", or something
like that.

   Thank you all...   JM.

 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +

   Of course, doing an "emerge -av eselect-compiler" spites this out:

These are the packages that would be merged, in reverse order:

Calculating dependencies   
!!! All ebuilds that could satisfy "eselect-compiler" have been masked.
!!! One of the following masked packages is required to complete your request:
- app-admin/eselect-compiler-2.0.0_rc2-r1 (masked by: package.mask)
# Ned Ludd <solar/gentoo.org> (Aug 14 2006)
# This pkg breaks working systems and eradicator
# has gone MIA yet again.
# Bugs 143697, 108398, 112156, 135702, 137917,
# 138296, 139016, 139629, 143684


For more information, see MASKED PACKAGES section in the emerge man page or 
refer to the Gentoo Handbook.

------- Comment #4 From Sébastien Fabbro 2007-03-25 20:07:06 0000 -------
It seems that gfortran-4.1.1 does not compile the fortran95 interface. Only
ifort works. I fixed it in cvs, along with an update of mkl.
It should automatically find ifc/ifort if you have it installed, by enabling
the fortran95 use flag.