[SciPy-user] ATLAS and gcc v4.0.2

Nils Wagner nwagner at mecha.uni-stuttgart.de
Tue Feb 28 13:28:43 CST 2006


On Tue, 28 Feb 2006 18:49:06 +0100
  "Hanno Klemm" <klemm at phys.ethz.ch> wrote:
> 
> Hi Christian,
> 
> you output looks like a problem I had: 
> 
> On my 64bit architecture I had to modify the make file 
>for atlas and
> append an -fPIC at the compiler flags (I tired that at 
>the
> architecture flags, the g77 and the c flags. That did 
>the job).
> Otherwise it seems not possible to use the libraries 
>with scipy.
> 
> Good luck,
> Hanno

Hi Hanno,

Thank you for your valuable comment. Did you also
apply the patch to ATLAS/bin/uumtst.c ? The sanity_test
failed here.
http://math-atlas.sourceforge.net/errata.html#gcc4

Cheers,

           Nils

> 
> Christian Kristukat <ckkart at hoc.net> said:
> 
>> Nils Wagner wrote:
>> > On Tue, 28 Feb 2006 19:20:55 +0900
>> >   Christian Kristukat <ckkart at hoc.net> wrote:
>> >> Nils Wagner wrote:
>> >>>>> SuSE 10.0 comes with gcc-fortran
>> >>>>>
>> >>>>> Name        : gcc-fortran 
>>                 Relocations: 
>> >>>> You're right. But the executable is called 
>>'gfortran'. I 
>> >>>> mixed that up.
>> >>>>
>> >>> I have already build blas and lapack libraries using 
>>g77 
>> >>> according to the installation hints.
>> >>>
>> >>> Can I use them or must I recompile blas and lapack 
>>with 
>> >>> gfortran ?
>> >> I'm not an expert on this subject, just sharing my 
>> >> experiences. If you're using
>> >> ATLAS you don't need BLAS as far as I understood. I 
>> >> followed the instructions in
>> >> the link I posted before. Compared to the compilation 
>> >> time of ATLAS, LAPACK
>> >> builds almost instantaneously, so it doesn't hurt to 
>> >> rebuild LAPACK, I just
>> >> don't know wether g77 built LAPACK works together 
>>with 
>> >> gfortran ATLAS.
>> >> At least I know, that if you're using gfrotran all 
>>the 
>> >> time, everything works
>> >> fine on SuSE 10.0.
>> >>
>> >> Good luck, Christian
>> >>
>> >> _______________________________________________
>> >> SciPy-user mailing list
>> >> SciPy-user at scipy.net
>> >> http://www.scipy.net/mailman/listinfo/scipy-user
>> > 
>> >   
>> >   
>> > I followed your advice and rebuilt blas and lapack 
>>using
>> > gfortran. Compilation of ATLAS seems to work. Also
>> > I have build a complete lapack
>> > 
>>http://math-atlas.sourceforge.net/errata.html#completelp
>> > 
>> > I am on SuSE 10.0 x86_64 GNU/Linux
>> > 
>> > However
>> > 
>> > python setup.py build failed
>> > 
>> > Running from numpy source directory.
>> > Warning: not existing path in numpy/distutils: 
>>site.cfg
>> > No module named __svn_version__
>> > F2PY Version 2_2179
>> > blas_opt_info:
>> > blas_mkl_info:
>> > 
>>/usr/local/svn/numpy/numpy/distutils/system_info.py:531: 
>> > UserWarning: Library error: libs=['mkl', 'vml', 
>>'guide'] 
>> > found_libs=[]
>> >    warnings.warn("Library error: libs=%s 
>>found_libs=%s" % 
>> > \
>> >    NOT AVAILABLE
>> > 
>> > atlas_blas_threads_info:
>> > Setting PTATLAS=ATLAS
>> > 
>>/usr/local/svn/numpy/numpy/distutils/system_info.py:531: 
>> > UserWarning: Library error: libs=['ptf77blas', 
>>'ptcblas', 
>> > 'atlas'] found_libs=[]
>> >    warnings.warn("Library error: libs=%s 
>>found_libs=%s" % 
>> > \
>> > 
>>/usr/local/svn/numpy/numpy/distutils/system_info.py:531: 
>> > UserWarning: Library error: libs=['ptf77blas', 
>>'ptcblas', 
>> > 'atlas'] 
>>found_libs=['/usr/local/lib/atlas/libatlas.a']
>> >    warnings.warn("Library error: libs=%s 
>>found_libs=%s" % 
>> > \
>> >    NOT AVAILABLE
>> > 
>> > atlas_blas_info:
>> > 
>>/usr/local/svn/numpy/numpy/distutils/system_info.py:531: 
>> > UserWarning: Library error: libs=['f77blas', 'cblas', 
>> > 'atlas'] found_libs=[]
>> >    warnings.warn("Library error: libs=%s 
>>found_libs=%s" % 
>> > \
>> >    FOUND:
>> >      libraries = ['f77blas', 'cblas', 'atlas']
>> >      library_dirs = ['/usr/local/lib/atlas']
>> >      language = c
>> > 
>> > running build_src
>> > building extension "atlas_version" sources
>> > creating build
>> > creating build/src
>> >    adding 
>>'build/src/atlas_version_0x5b360788cdd9eddc.c' 
>> > to sources.
>> > running build_ext
>> > customize UnixCCompiler
>> > customize UnixCCompiler using build_ext
>> > building 'atlas_version' extension
>> > compiling C sources
>> > gcc options: '-pthread -fno-strict-aliasing -DNDEBUG 
>>-O2 
>> > -fmessage-length=0 -Wall -D_FORTIFY_SOURCE=2 -g -fPIC'
>> > creating build/temp.linux-x86_64-2.4
>> > creating build/temp.linux-x86_64-2.4/build
>> > creating build/temp.linux-x86_64-2.4/build/src
>> > compile options: '-Inumpy/core/include 
>> > -I/usr/include/python2.4 -c'
>> > gcc: build/src/atlas_version_0x5b360788cdd9eddc.c
>> > gcc -pthread -shared 
>> >
> build/temp.linux-x86_64-2.4/build/src/atlas_version_0x5b360788cdd9eddc.o 
>> > -L/usr/local/lib/atlas -lf77blas -lcblas -latlas -o 
>> > build/temp.linux-x86_64-2.4/atlas_version.so
>> >
> /usr/lib64/gcc/x86_64-suse-linux/4.0.2/../../../../x86_64-suse-linux/bin/ld:
> 
>> > /usr/local/lib/atlas/libatlas.a(ATL_buildinfo.o): 
>> > relocation R_X86_64_32 against `a local symbol' can 
>>not be 
>> > used when making a shared object; recompile with -fPIC
>> > /usr/local/lib/atlas/libatlas.a: could not read 
>>symbols: 
>> > Bad value
>> > collect2: ld returned 1 exit status
>> >
> /usr/lib64/gcc/x86_64-suse-linux/4.0.2/../../../../x86_64-suse-linux/bin/ld:
> 
>> > /usr/local/lib/atlas/libatlas.a(ATL_buildinfo.o): 
>> > relocation R_X86_64_32 against `a local symbol' can 
>>not be 
>> > used when making a shared object; recompile with -fPIC
>> > /usr/local/lib/atlas/libatlas.a: could not read 
>>symbols: 
>> > Bad value
>> > collect2: ld returned 1 exit status
>> > ##### msg: error: Command "gcc -pthread -shared 
>> >
> build/temp.linux-x86_64-2.4/build/src/atlas_version_0x5b360788cdd9eddc.o 
>> > -L/usr/local/lib/atlas -lf77blas -lcblas -latlas -o 
>> > build/temp.linux-x86_64-2.4/atlas_version.so" failed 
>>with 
>> > exit status 1
>> > error: Command "gcc -pthread -shared 
>> >
> build/temp.linux-x86_64-2.4/build/src/atlas_version_0x5b360788cdd9eddc.o 
>> > -L/usr/local/lib/atlas -lf77blas -lcblas -latlas -o 
>> > build/temp.linux-x86_64-2.4/atlas_version.so" failed 
>>with 
>> > exit status 1
>> >    FOUND:
>> >      libraries = ['f77blas', 'cblas', 'atlas']
>> >      library_dirs = ['/usr/local/lib/atlas']
>> >      language = c
>> >      define_macros = [('NO_ATLAS_INFO', 2)]
>> > 
>> > Warning: distutils distribution has been initialized, 
>>it 
>> > may be too late to add an extension _dotblas
>> > Traceback (most recent call last):
>> >    File "setup.py", line 76, in ?x86_64 GNU/Linux
>> >      setup_package()
>> >    File "setup.py", line 63, in setup_package
>> >      config.add_subpackage('numpy')
>> >    File 
>> > "/usr/local/svn/numpy/numpy/distutils/misc_util.py", 
>>line 
>> > 592, in add_subpackage
>> >      config_list = 
>> > self.get_subpackage(subpackage_name,subpackage_path)
>> >    File 
>> > "/usr/local/svn/numpy/numpy/distutils/misc_util.py", 
>>line 
>> > 582, in get_subpackage
>> >      subpackage_path)
>> >    File 
>> > "/usr/local/svn/numpy/numpy/distutils/misc_util.py", 
>>line 
>> > 539, in _get_configuration_from_setup_py
>> >      config = setup_module.configuration(*args)
>> >    File "/usr/local/svn/numpy/numpy/setup.py", line 
>>10, in 
>> > configuration
>> >      config.add_subpackage('core')
>> >    File 
>> > "/usr/local/svn/numpy/numpy/distutils/misc_util.py", 
>>line 
>> > 592, in add_subpackage
>> >      config_list = 
>> > self.get_subpackage(subpackage_name,subpackage_path)
>> >    File 
>> > "/usr/local/svn/numpy/numpy/distutils/misc_util.py", 
>>line 
>> > 582, in get_subpackage
>> >      subpackage_path)
>> >    File 
>> > "/usr/local/svn/numpy/numpy/distutils/misc_util.py", 
>>line 
>> > 539, in _get_configuration_from_setup_py
>> >      config = setup_module.configuration(*args)
>> >    File "numpy/core/setup.py", line 217, in 
>>configuration
>> >      config.add_data_dir('tests')
>> >    File 
>> > "/usr/local/svn/numpy/numpy/distutils/misc_util.py", 
>>line 
>> > 636, in add_data_dir
>> >      self.add_data_files((ds,filenames))
>> >    File 
>> > "/usr/local/svn/numpy/numpy/distutils/misc_util.py", 
>>line 
>> > 702, in add_data_files
>> >      dist.data_files.extend(data_dict.items())
>> > AttributeError: 'NoneType' object has no attribute 
>> > 'extend'
>> > 
>> 
>> I can't say more than that I followed exactly the 
>>instructions here:
>> http://pong.tamu.edu/tiki/tiki-view_blog_post.php?blogId=6&postId=97
>> (the full LAPACK issue is covered there, too)
>> and it worked.
>> 
>> Christian
>> 
>> _______________________________________________
>> SciPy-user mailing list
>> SciPy-user at scipy.net
>> http://www.scipy.net/mailman/listinfo/scipy-user
>> 
> 
> 
> 
> -- 
> Hanno Klemm
> klemm at phys.ethz.ch
> 
> 
> _______________________________________________
> SciPy-user mailing list
> SciPy-user at scipy.net
> http://www.scipy.net/mailman/listinfo/scipy-user
  



More information about the SciPy-user mailing list