[Numpy-discussion] Re: Numpy on 64 bit Xeon with ifort and mkl
Robert Kern
robert.kern at gmail.com
Wed Apr 5 17:17:04 EDT 2006
Rahul Kanwar wrote:
> i successfuly compiled it without the -lmkl_em64t flag but when i import
> numpy in python it gives error that some symbol is missing. I think
> that maybe if i use ifort as the linker instead ok gcc then things
> will work out properly, but i could'nt find how to change the linker
> to ifort. Aynone there who can help me with this problem ?
It's not likely that using ifort to link will help. The problem is this bit:
> /opt/intel/mkl/8.0.2/lib/em64t/libmkl_em64t.a(def_cgemm_omp.o):
> relocation R_X86_64_PC32 against `_mkl_blas_def_cgemm_276__par_loop0'
> can not be used when making a shared object; recompile with -fPIC
You are linking against static libraries which were not compiled to be "position
independent;" that is, they can't be used in shared libraries which are what
Python extension modules are. C.f.:
http://en.wikipedia.org/wiki/Position_independent_code
Look around in /opt/intel/; they've almost certainly have provided shared
library versions of the MKL that could be used. Google gives me these, for example:
http://www.intel.com/support/performancetools/libraries/mkl/linux/sb/cs-017267.htm
http://www.intel.com/software/products/mkl/docs/mklgs_lnx.htm#Linking_Your_Application_with_Intel_MKL
--
Robert Kern
robert.kern at gmail.com
"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
More information about the NumPy-Discussion
mailing list