[SciPy-user] Errors compiling scipy with icc and intel mkl

Tom Denniston tom.denniston at alum.dartmouth.org
Mon Dec 18 18:06:43 CST 2006


Ok.  This seems to be totally a function of the LD_FLAGS environment
variable.  It looks like the Scipy build script or disutils puts the
LD flags before the .o files on the command line which cause g77 to
error out.  Apparantely if you want -L directives on the command line
for g77 you need to put them after the .o files.  Simply removing the
LD_FLAGS from the environment fixes the problem.  Or is a workaround,
at least.  I unfortunately do not understand the issue well enough to
fix the scipy build script if it is in fact broken.

--Tom

On 12/18/06, Tom Denniston <tom.denniston at alum.dartmouth.org> wrote:
> I get a recurrent error no matter what i seem to try compiling scipy.
> The latest attempt I used the intel compiler and the intel mkl
> following the instructions on the wiki.  I keep getting these
> undefined references to __MAIN.  I am sure this is something really
> obvious that I am missing but
>
>
> I'm using intel mkl version 8.0.1 and icc version 8.1 and g77 from gcc
> version GCC 3.2.3.  Does anyone know what this error means.  I know
> the g77 is rather old but I am unfortunately stuck with it:
>
> compile options: '-DSCIPY_MKL_H -DSCIPY_MKL_H
> -I/local/intel/mkl/8.0.1/include -I/usr/local/include -I/usr/include
> -I/local/include -Ibuild/src.linux-i686-2.5
> -I/local/lib/python2.5/site-packages/numpy/core/include
> -I/local/include/python2.5 -c'
> /local/tools/gcc/3.2.3/bin/g77 -L/local/lib -L/lib -L/usr/lib
> -L/usr/X11R6/lib -L/local/intel/mkl/8.0.1/lib/32/
> build/temp.linux-i686-2.5/build/src.linux-i686-2.5/Lib/fftpack/_fftpackmodule.o
> build/temp.linux-i686-2.5/Lib/fftpack/src/zfft.o
> build/temp.linux-i686-2.5/Lib/fftpack/src/drfft.o
> build/temp.linux-i686-2.5/Lib/fftpack/src/zrfft.o
> build/temp.linux-i686-2.5/Lib/fftpack/src/zfftnd.o
> build/temp.linux-i686-2.5/build/src.linux-i686-2.5/fortranobject.o
> -L/local/intel/mkl/8.0.1/lib/32 -L/local/lib/python2.5/config
> -Lbuild/temp.linux-i686-2.5 -ldfftpack -lmkl -lvml -lpthread
> -lpython2.5 -lg2c -o
> build/lib.linux-i686-2.5/scipy/fftpack/_fftpack.so
> build/temp.linux-i686-2.5/Lib/fftpack/src/zfftnd.o(.text+0x215): In
> function `get_cache_id_zmklfftnd':
> : undefined reference to `_intel_fast_memcpy'
> build/temp.linux-i686-2.5/build/src.linux-i686-2.5/fortranobject.o(.text+0xa7e):
> In function `fortran_setattr':
> : undefined reference to `_intel_fast_memcpy'
> build/temp.linux-i686-2.5/build/src.linux-i686-2.5/fortranobject.o(.text+0xb0b):
> In function `fortran_setattr':
> : undefined reference to `_intel_fast_memcpy'
> build/temp.linux-i686-2.5/build/src.linux-i686-2.5/fortranobject.o(.text+0xf76):
> In function `array_from_pyobj':
> : undefined reference to `_intel_fast_memset'
> /local/tools/gcc/3.2.3/bin/../lib/gcc-lib/i686-pc-linux-gnu/3.2.3/../../../libfrtbegin.a(frtbegin.o)(.text+0x32):
> In function `main':
> : undefined reference to `MAIN__'
> collect2: ld returned 1 exit status
> build/temp.linux-i686-2.5/Lib/fftpack/src/zfftnd.o(.text+0x215): In
> function `get_cache_id_zmklfftnd':
> : undefined reference to `_intel_fast_memcpy'
> build/temp.linux-i686-2.5/build/src.linux-i686-2.5/fortranobject.o(.text+0xa7e):
> In function `fortran_setattr':
> : undefined reference to `_intel_fast_memcpy'
> build/temp.linux-i686-2.5/build/src.linux-i686-2.5/fortranobject.o(.text+0xb0b):
> In function `fortran_setattr':
> : undefined reference to `_intel_fast_memcpy'
> build/temp.linux-i686-2.5/build/src.linux-i686-2.5/fortranobject.o(.text+0xf76):
> In function `array_from_pyobj':
> : undefined reference to `_intel_fast_memset'
> /local/tools/gcc/3.2.3/bin/../lib/gcc-lib/i686-pc-linux-gnu/3.2.3/../../../libfrtbegin.a(frtbegin.o)(.text+0x32):
> In function `main':
> : undefined reference to `MAIN__'
> collect2: ld returned 1 exit status
>


More information about the SciPy-user mailing list