Hi, I would like to report an issue with python's distutils. I ran into trouble with my numpy installation, which seems to be caused by distutils. What I am to do is to link my numpy shared objects against Intel MKL (version 10.1)
I have the following in my site.cfg: [mkl] library_dirs = /share/apps/intel/mkl/lib/em64t:/share/apps/intel/lib/intel64 mkl_libs = mkl_gf_lp64, mkl_intel_thread, mkl_core, iomp5 This is to follow the link instruction in MKL 10 manual. The catch is, the two library dirs contain part of the library files to be linked in, that is: /share/apps/intel/mkl/lib/em64t contains: mkl_gf_lp64, mkl_intel_thread, mkl_core /share/apps/intel/lib/intel64 contains: iomp5 It seems that this situation is not handled well by distutils. When I traced the python build script (by adding printout to distutils/system_info.py), I found out that search algorithm in distutils.system_info class (method: check_libs2, which in turn calls _check_libs, which in turn calls _lib_list) requires that all five libraries above are sought to be together in one of the subdirs given above (either /share/apps/intel/mkl/lib/em64t or /share/apps/intel/lib/intel64). The method cannot handle libraries that are scattered as my situation described above. Note that I could have fooled the build system by providing softlink to all these files in a single subdir, but it seems that system_info could be fixed to handle situations above without much muddling like this. The problem was first detected with numpy version 1.2.1 (which is old, I know), but a quick inspection of the system_info module included there shows that not much has changed since then compared to the most recent distutils (included with my python 2.6.4 installation). -- Wirawan Purwanto College of William and Mary Physics Department Williamsburg, VA 23187 _______________________________________________ Distutils-SIG maillist - [email protected] http://mail.python.org/mailman/listinfo/distutils-sig
