[SciPy-user] BLAS, LAPACK, ATLAS libraries.

fie.pye@atl... fie.pye@atl...
Thu Jul 19 17:40:42 CDT 2007


>---------------------------------------------------------
>Od: David Cournapeau
>Přijato: 18.7.2007 3:54:48
>Předmět: Re: [SciPy-user] BLAS, LAPACK, ATLAS libraries.
>
>fie.pye@atlas.cz wrote:
>
>> Hi David, hi Vincent,
>
>>
>
>> thank you for your response. 
>
>> On my computer I have three gcc compilers: gcc4.1, gcc4.2 and gcc3.4.6. Since you mentioned possible problem with gfortran I decided to compile BLAS, LAPACK, python2.5 and numpy again with gcc3.4.6 and f77.
>
>To be precise, what is problematic is mixing fortran compilers (for 
>
>example using gfortran for BLAS and g77 for LAPACK). gfortran by itself 
>
>is not that problematic.
>
>>  
>
>> Traceback (most recent call last):
>
>>   File "<stdin>", line 1, in <module>
>
>>   File "/usr/local/python/python2.5.1/lib/python2.5/site-packages/numpy/__init__.py", line 43, in <module>
>
>>     import linalg
>
>>   File "/usr/local/python/python2.5.1/lib/python2.5/site-packages/numpy/linalg/__init__.py", line 4, in <module>
>
>>     from linalg import *
>
>>   File "/usr/local/python/python2.5.1/lib/python2.5/site-packages/numpy/linalg/linalg.py", line 25, in <module>
>
>>     from numpy.linalg import lapack_lite
>
>> ImportError: /usr/local/lib64/lapack/liblapack.so: undefined symbol: slamch_
>
>The problem is the way you build the shared library is wrong: you cannot 
>
>just use g77 -shared -o soname *.o, because LAPACK object files are in 
>
>several directories.
>
>
>
>One correct way is to use the static library .a, uncompress it in a 
>
>directory, and build the shared library from that. There is a problem 
>
>when several object files have the same name (because you cannot have 
>
>several files with the same name in a directory), though, so extra care 
>
>must be taken.
>
>>
>
>> I included all installation scripts and log files to enclosed file. 
>
>>
>
>> I also began to install from source rpm but I am not familiar with that installation therefore I stopped after building. What does it mean refblas. 
>
>I cannot use blas and lapack from officiel repository because they do 
>
>not work very well, and I use a different name to avoid name clashes. 
>
>You should build the following srpms in this order:
>
>
>
>- refblas
>
>- lapack3
>
>- python-numpy
>
>- python-scipy
>
>
>
>Building them is not really different than any other source rpms. Since 
>
>you are using a distribution I've never tested, there is a good chance 
>
>it does not work out of the box, but I would rather help you solving 
>
>those problems so that everybody can benefit from them rather than 
>
>explaining how to build blas and lapack properly (which is really error 
>
>prone and non trivial).
>
>
>
>David
>
>_______________________________________________
>
>SciPy-user mailing list
>
>SciPy-user@scipy.org
>
>http://projects.scipy.org/mailman/listinfo/scipy-user
>
>
>
>
Hello David.

Thank you for responses. I managed to install numpy and scipy with BLAS and LAPACK libraries. Now I am going to install ATLAS and again python2.5.1, numpy and scipy. I will follow two ways. The first one is to build it from *.tar.gz sources. The second one is to build it from *.src.rpm as you recommended.  I think that the closer one *.src.rpm from http://software.opensuse.org/download/home:/ashigabou to CentOS 5.0 is Fedoea 6
http://software.opensuse.org/download/home:/ashigabou/Fedora_Extras_6/src/

The reason why I started with the *.tar.gz is that I have the full control over the version of libraries and places where the libraries are located. I can easily remove them when installation fails. In case of *.src.rmp I will have to study the installation and removing procedure first. I am going to start with rpmbuild. If you have some suggestions let me know.

If everything goes well I will install BLAS, LAPACK, ATLAS, python2.5.1, numpy and scipy also on HP workstation and server with AMD Opteron 2220 and 2218 with SUSE Linux Enterprise 10. 

Best regards.
Fie Pye



More information about the SciPy-user mailing list