[SciPy-User] [build] visual studio 2008 and intel fortran 11.1 compiler

1 view
Skip to first unread message

Eloi Gaudry

unread,
Dec 14, 2009, 7:14:12 AM12/14/09
to scipy...@scipy.org
Hi,

I'm having some trouble building scipy using Visual Studio 2008 and
Intel Fortran 11.1. It seems that the objects built by the Intel Fortran
compiler are not output in the 'right' directory. As you can see below,
the built objects are in the current directory (with *.obj sufix instead
of *.o).
I think I'm missing something somewhere in the distutils module, but I
cannot find what). Could the IntelFortran detection module be broken for
version 11.1 ?

Note that numpy-1.30 was be built using the same compilers (and without
any issue). Aren't we using the same module to build scipy ?

Any help would be appreciated,
Thanks,
Eloi

C:\fft\external\scipy-0.7.1>call "C:\Program Files\Microsoft Visual
Studio 9.0\VC\vcvarsall.bat" x86
Setting environment for using Microsoft Visual Studio 2008 x86 tools.

C:\fft\external\scipy-0.7.1>set FC_VENDOR=Intel
C:\fft\external\scipy-0.7.1>SET IFORT_COMPILER11=C:\Program
Files\Intel\Compiler\11.1\051
C:\fft\external\scipy-0.7.1>SET INTEL_LICENSE_FILE=C:\Program
Files\Common Files\Intel\Licenses;%INTEL_LICENSE_FILE%
C:\fft\external\scipy-0.7.1>SET PATH=%IFORT_COMPILER11%\Bin\ia32;%PATH%
C:\fft\external\scipy-0.7.1>SET LIB=%IFORT_COMPILER11%\Lib\ia32;%LIB%
C:\fft\external\scipy-0.7.1>SET
INCLUDE=%IFORT_COMPILER11%\Include;%IFORT_COMPILER11%\Include\ia32;%INCLUDE

C:\fft\external\scipy-0.7.1>python setup.py build --compiler=msvc
--fcompiler=intel --verbose
Warning: No configuration returned, assuming unavailable.
blas_opt_info:
blas_mkl_info:
FOUND:
libraries = ['mkl_intel_c', 'mkl_intel_thread_dll', 'mkl_core_dll']
library_dirs = ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\mkl\\ia32\\lib']
define_macros = [('SCIPY_MKL_H', None)]
include_dirs = ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\mkl\\include']

FOUND:
libraries = ['mkl_intel_c', 'mkl_intel_thread_dll', 'mkl_core_dll']
library_dirs = ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\mkl\\ia32\\lib']
define_macros = [('SCIPY_MKL_H', None)]
include_dirs = ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\mkl\\include']

lapack_opt_info:
lapack_mkl_info:
mkl_info:
FOUND:
libraries = ['mkl_intel_c', 'mkl_intel_thread_dll', 'mkl_core_dll']
library_dirs = ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\mkl\\ia32\\lib']
define_macros = [('SCIPY_MKL_H', None)]
include_dirs = ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\mkl\\include']

FOUND:
libraries = ['mkl_scalapack_core_dll', 'mkl_intel_c',
'mkl_intel_thread_dll', 'mkl_core_dll']
library_dirs = ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\mkl\\ia32\\lib']
define_macros = [('SCIPY_MKL_H', None)]
include_dirs = ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\mkl\\include']

FOUND:
libraries = ['mkl_scalapack_core_dll', 'mkl_intel_c',
'mkl_intel_thread_dll', 'mkl_core_dll']
library_dirs = ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\mkl\\ia32\\lib']
define_macros = [('SCIPY_MKL_H', None)]
include_dirs = ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\mkl\\include']

umfpack_info:
libraries umfpack not found in c:\fft\bin\python-2.6.4\lib
libraries umfpack not found in C:\
libraries umfpack not found in c:\fft\bin\python-2.6.4\libs
c:\fft\bin\python-2.6.4\lib\site-packages\numpy\distutils\system_info.py:452:
UserWarning:
UMFPACK sparse solver (http://www.cise.ufl.edu/research/sparse/umfpack/)
not found. Directories to search for the libraries can be specified
in the
numpy/distutils/site.cfg file (section [umfpack]) or by setting
the UMFPACK environment variable.
warnings.warn(self.notfounderror.__doc__)
NOT AVAILABLE

running build
running config_cc
unifing config_cc, config, build_clib, build_ext, build commands
--compiler options
running config_fc
unifing config_fc, config, build_clib, build_ext, build commands
--fcompiler options
running build_src
building py_modules sources
building library "dfftpack" sources
building library "linpack_lite" sources
building library "mach" sources
building library "quadpack" sources
building library "odepack" sources
building library "fitpack" sources
building library "odrpack" sources
building library "minpack" sources
building library "rootfind" sources
building library "superlu_src" sources
building library "arpack" sources
building library "sc_c_misc" sources
building library "sc_cephes" sources
building library "sc_mach" sources
building library "sc_toms" sources
building library "sc_amos" sources
building library "sc_cdf" sources
building library "sc_specfun" sources
building library "statlib" sources
building extension "scipy.cluster._vq" sources
building extension "scipy.cluster._hierarchy_wrap" sources
building extension "scipy.fftpack._fftpack" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.fftpack.convolve" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.integrate._quadpack" sources
building extension "scipy.integrate._odepack" sources
building extension "scipy.integrate.vode" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.interpolate._fitpack" sources
building extension "scipy.interpolate.dfitpack" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
adding
'build\src.win32-2.6\scipy\interpolate\src\dfitpack-f2pywrappers.f' to
sources.
building extension "scipy.interpolate._interpolate" sources
building extension "scipy.io.numpyio" sources
building extension "scipy.lib.blas.fblas" sources
f2py options: ['skip:', ':']
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
adding
'build\src.win32-2.6\build\src.win32-2.6\scipy\lib\blas\fblas-f2pywrappers.f'
to sources.
building extension "scipy.lib.blas.cblas" sources
adding 'build\src.win32-2.6\scipy\lib\blas\cblas.pyf' to sources.
f2py options: ['skip:', ':']
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.lib.lapack.flapack" sources
f2py options: ['skip:', ':']
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.lib.lapack.clapack" sources
adding 'build\src.win32-2.6\scipy\lib\lapack\clapack.pyf' to sources.
f2py options: ['skip:', ':']
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.lib.lapack.calc_lwork" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.lib.lapack.atlas_version" sources
building extension "scipy.linalg.fblas" sources
adding 'build\src.win32-2.6\scipy\linalg\fblas.pyf' to sources.
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
adding
'build\src.win32-2.6\build\src.win32-2.6\scipy\linalg\fblas-f2pywrappers.f'
to sources.
building extension "scipy.linalg.cblas" sources
adding 'build\src.win32-2.6\scipy\linalg\cblas.pyf' to sources.
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.linalg.flapack" sources
adding 'build\src.win32-2.6\scipy\linalg\flapack.pyf' to sources.
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
adding
'build\src.win32-2.6\build\src.win32-2.6\scipy\linalg\flapack-f2pywrappers.f'
to sources.
building extension "scipy.linalg.clapack" sources
adding 'build\src.win32-2.6\scipy\linalg\clapack.pyf' to sources.
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.linalg._flinalg" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.linalg.calc_lwork" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.linalg.atlas_version" sources
building extension "scipy.odr.__odrpack" sources
building extension "scipy.optimize._minpack" sources
building extension "scipy.optimize._zeros" sources
building extension "scipy.optimize._lbfgsb" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.optimize.moduleTNC" sources
building extension "scipy.optimize._cobyla" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.optimize.minpack2" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.optimize._slsqp" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.optimize._nnls" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.signal.sigtools" sources
building extension "scipy.signal.spline" sources
building extension "scipy.sparse.linalg.isolve._iterative" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.sparse.linalg.dsolve._zsuperlu" sources
building extension "scipy.sparse.linalg.dsolve._dsuperlu" sources
building extension "scipy.sparse.linalg.dsolve._csuperlu" sources
building extension "scipy.sparse.linalg.dsolve._ssuperlu" sources
building extension "scipy.sparse.linalg.dsolve.umfpack.__umfpack" sources
building extension "scipy.sparse.linalg.eigen.arpack._arpack" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
adding
'build\src.win32-2.6\build\src.win32-2.6\scipy\sparse\linalg\eigen\arpack\_arpack-f2pywrappers.f'
to sources
building extension "scipy.sparse.sparsetools._csr" sources
building extension "scipy.sparse.sparsetools._csc" sources
building extension "scipy.sparse.sparsetools._coo" sources
building extension "scipy.sparse.sparsetools._bsr" sources
building extension "scipy.sparse.sparsetools._dia" sources
building extension "scipy.spatial.ckdtree" sources
building extension "scipy.spatial._distance_wrap" sources
building extension "scipy.special._cephes" sources
building extension "scipy.special.specfun" sources
f2py options: ['--no-wrap-functions']
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.stats.statlib" sources
f2py options: ['--no-wrap-functions']
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.stats.vonmises_cython" sources
building extension "scipy.stats.futil" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
building extension "scipy.stats.mvn" sources
f2py options: []
adding 'build\src.win32-2.6\fortranobject.c' to sources.
adding 'build\src.win32-2.6' to include_dirs.
adding 'build\src.win32-2.6\scipy\stats\mvn-f2pywrappers.f' to sources.
building extension "scipy.ndimage._nd_image" sources
building data_files sources
running build_py
copying scipy\version.py -> build\lib.win32-2.6\scipy
copying build\src.win32-2.6\scipy\__config__.py -> build\lib.win32-2.6\scipy
running build_clib
No module named msvccompiler in numpy.distutils; trying from distutils
customize MSVCCompiler
customize MSVCCompiler using build_clib
customize IntelFCompiler
debutg compiler_f90
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
Found executable C:\Program Files\Intel\Compiler\11.1\051\Bin\ia32\ifort.exe
debutg {'linker_exe': None, 'archiver': ['ar', '-cr'], 'compiler_f77':
[None, '-72', '-w90', '-w95'], 'version_cmd':
F77>', '-FI', '-V', '-c',
'c:\\docume~1\\qa\\locals~1\\temp\\tmp4uc_dl\\frbyvf.f', '-o',
'c:\\docume~1\\qa\\locals~1\
mp\\tmp4uc_dl\\frbyvf.o'], 'compiler_fix': [None, '-FI'], 'linker_so':
['<F90>', '-shared'], 'ranlib': ['ranlib'], 'c
iler_f90': ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\Bin\\ia32\\ifort.exe']}
debutg compiler_f77
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg compiler_fix
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg linker_so
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg linker_exe
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg version_cmd
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg archiver
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg ranlib
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg compiler_f90
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg {'linker_exe': None, 'archiver': ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\Bin\\ia32\\ifort.exe', '-cr'
'compiler_f77': ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\Bin\\ia32\\ifort.exe', '-72', '-w90',
'-w95'], 'vers
_cmd': ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\Bin\\ia32\\ifort.exe', '-FI', '-V',
'-c', 'c:\\docume~1\\qa\\
als~1\\temp\\tmp4uc_dl\\frbyvf.f', '-o',
'c:\\docume~1\\qa\\locals~1\\temp\\tmp4uc_dl\\frbyvf.o'], 'compiler_fix': ['
\Program Files\\Intel\\Compiler\\11.1\\051\\Bin\\ia32\\ifort.exe',
'-FI'], 'linker_so': ['C:\\Program Files\\Intel\\C
iler\\11.1\\051\\Bin\\ia32\\ifort.exe', '-shared'], 'ranlib':
['C:\\Program Files\\Intel\\Compiler\\11.1\\051\\Bin\\i
\\ifort.exe'], 'compiler_f90': ['C:\\Program
Files\\Intel\\Compiler\\11.1\\051\\Bin\\ia32\\ifort.exe']}
debutg compiler_f77
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg compiler_fix
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg linker_so
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg linker_exe
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg version_cmd
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg archiver
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
debutg ranlib
debugc <numpy.distutils.environment.EnvironmentConfig object at 0x01DCCEB0>
Found executable C:\Program Files\Intel\Compiler\11.1\051\Bin\ia32\ifort.exe
customize IntelFCompiler using build_clib
building 'dfftpack' library
compiling Fortran sources
Fortran f77 compiler: C:\Program
Files\Intel\Compiler\11.1\051\Bin\ia32\ifort.exe -72 -w90 -w95 -KPIC -cm
-O3 -unroll
Fortran f90 compiler: C:\Program
Files\Intel\Compiler\11.1\051\Bin\ia32\ifort.exe -FR -KPIC -cm -O3 -unroll
Fortran fix compiler: C:\Program
Files\Intel\Compiler\11.1\051\Bin\ia32\ifort.exe -FI -KPIC -cm -O3 -unroll
creating build\temp.win32-2.6
creating build\temp.win32-2.6\scipy
creating build\temp.win32-2.6\scipy\fftpack
creating build\temp.win32-2.6\scipy\fftpack\src
creating build\temp.win32-2.6\scipy\fftpack\src\dfftpack
compile options:
'-Ic:\fft\bin\python-2.6.4\lib\site-packages\numpy\core\include -c'
ifort.exe:f77: scipy\fftpack\src\dfftpack\dcosqb.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dcosqf.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dcosqi.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dcost.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dcosti.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dfftb.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dfftb1.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dfftf.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dfftf1.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dffti.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dffti1.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dsinqb.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dsinqf.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dsinqi.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dsint.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dsint1.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\dsinti.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\zfftb.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\zfftb1.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\zfftf.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\zfftf1.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\zffti.f
ifort.exe:f77: scipy\fftpack\src\dfftpack\zffti1.f
C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\lib.exe
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dcosqb.o bui
ld\temp.win32-2.6\scipy\fftpack\src\dfftpack\dcosqf.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dcosqi.o build\tem
p.win32-2.6\scipy\fftpack\src\dfftpack\dcost.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dcosti.o build\temp.win32
-2.6\scipy\fftpack\src\dfftpack\dfftb.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dfftb1.o
build\temp.win32-2.6\sc
ipy\fftpack\src\dfftpack\dfftf.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dfftf1.o
build\temp.win32-2.6\scipy\fft
pack\src\dfftpack\dffti.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dffti1.o
build\temp.win32-2.6\scipy\fftpack\sr
c\dfftpack\dsinqb.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dsinqf.o
build\temp.win32-2.6\scipy\fftpack\src\dfft
pack\dsinqi.o build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dsint.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\ds
int1.o build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dsinti.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\zfftb.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\zfftb1.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\zfftf.o build\t
emp.win32-2.6\scipy\fftpack\src\dfftpack\zfftf1.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\zffti.o build\temp.win
32-2.6\scipy\fftpack\src\dfftpack\zffti1.o
/OUT:build\temp.win32-2.6\dfftpack.lib
Found executable C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\lib.exe
Microsoft (R) Library Manager Version 9.00.30729.01
Copyright (C) Microsoft Corporation. All rights reserved.

LINK : fatal error LNK1181: cannot open input file
'build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dcosqb.o'
error: Command "C:\Program Files\Microsoft Visual Studio
9.0\VC\BIN\lib.exe build\temp.win32-2.6\scipy\fftpack\src\dfftp
ack\dcosqb.o build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dcosqf.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dc
osqi.o build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dcost.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dcosti.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dfftb.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dfftb1.o build\t
emp.win32-2.6\scipy\fftpack\src\dfftpack\dfftf.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dfftf1.o build\temp.win
32-2.6\scipy\fftpack\src\dfftpack\dffti.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dffti1.o
build\temp.win32-2.6\
scipy\fftpack\src\dfftpack\dsinqb.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dsinqf.o
build\temp.win32-2.6\scipy\
fftpack\src\dfftpack\dsinqi.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dsint.o
build\temp.win32-2.6\scipy\fftpack
\src\dfftpack\dsint1.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dsinti.o
build\temp.win32-2.6\scipy\fftpack\src\d
fftpack\zfftb.o build\temp.win32-2.6\scipy\fftpack\src\dfftpack\zfftb1.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack
\zfftf.o build\temp.win32-2.6\scipy\fftpack\src\dfftpack\zfftf1.o
build\temp.win32-2.6\scipy\fftpack\src\dfftpack\zffti.
o build\temp.win32-2.6\scipy\fftpack\src\dfftpack\zffti1.o
/OUT:build\temp.win32-2.6\dfftpack.lib" failed with exit stat
us 1181

C:\fft\external\scipy-0.7.1>dir
Volume in drive C has no label.
Volume Serial Number is 54FF-E262

Directory of C:\fft\external\scipy-0.7.1

12/14/2009 01:08 PM <DIR> .
12/14/2009 01:08 PM <DIR> ..
12/09/2009 05:58 PM <DIR> build
11/27/2009 04:52 PM 585 build_scipy.x64.bat
12/09/2009 05:14 PM 790 build_scipy.x86.bat
12/09/2009 05:14 PM 848 build_scipy.x86.bat~
12/14/2009 01:07 PM 2,811 dcosqb.obj
12/14/2009 01:07 PM 2,649 dcosqf.obj
12/14/2009 01:07 PM 1,277 dcosqi.obj
12/14/2009 01:07 PM 1,849 dcost.obj
12/14/2009 01:07 PM 1,828 dcosti.obj
12/14/2009 01:07 PM 525 dfftb.obj
12/14/2009 01:08 PM 22,309 dfftb1.obj
12/14/2009 01:08 PM 525 dfftf.obj
12/14/2009 01:08 PM 23,737 dfftf1.obj
12/14/2009 01:08 PM 525 dffti.obj
12/14/2009 01:08 PM 1,930 dffti1.obj
11/24/2009 04:01 PM <DIR> doc
12/14/2009 01:08 PM 1,324 dsinqb.obj
12/14/2009 01:08 PM 1,161 dsinqf.obj
12/14/2009 01:08 PM 509 dsinqi.obj
12/14/2009 01:08 PM 541 dsint.obj
12/14/2009 01:08 PM 2,746 dsint1.obj
12/14/2009 01:08 PM 1,145 dsinti.obj
12/14/2009 01:05 PM 2,174
FFT_Install.aixgcc.fromnumpy13.python264.sh
11/24/2009 04:01 PM 7,414 FFT_install.dynblas.sh
11/24/2009 04:01 PM 759 FFT_Install.fromnumpy13.python264.sh
12/14/2009 01:07 PM 609 frbyvf.obj
11/24/2009 04:01 PM 13,619 INSTALL.txt
11/24/2009 04:01 PM 291 LATEST.txt
11/24/2009 04:01 PM 1,570 LICENSE.txt
11/24/2009 04:01 PM 695 MANIFEST.in
11/24/2009 04:01 PM 1,715 PKG-INFO
11/24/2009 04:01 PM 4,097 README.txt
12/14/2009 01:07 PM <DIR> scipy
11/24/2009 04:01 PM 4,991 setup.py
11/24/2009 04:01 PM 149 setupegg.py
11/24/2009 04:01 PM 3,441 setupscons.py
12/09/2009 04:36 PM 128 site.aixxlf.cfg
11/24/2009 04:01 PM 4,041 THANKS.txt
11/24/2009 04:01 PM 1,233 TOCHANGE.txt
12/14/2009 01:08 PM 541 zfftb.obj
12/14/2009 01:08 PM 22,229 zfftb1.obj
12/14/2009 01:08 PM 541 zfftf.obj
12/14/2009 01:08 PM 22,341 zfftf1.obj
12/14/2009 01:08 PM 525 zffti.obj
12/14/2009 01:08 PM 2,046 zffti1.obj
42 File(s) 164,763 bytes

_______________________________________________
SciPy-User mailing list
SciPy...@scipy.org
http://mail.scipy.org/mailman/listinfo/scipy-user

Eloi Gaudry

unread,
Dec 15, 2009, 5:07:20 AM12/15/09
to SciPy Users List
Hi,

I think that the numpy/distutils/intel.py module is not up-to-date as it
doesn't support Intel Visual Fortran for 64-bits apps (windows).

And I think that the distutils module from python-2.6.4 cannot cope with
Intel Visual Fortran neither:

For instance, the following build command (automatically generated by
distutils):


C:\Program Files\Intel\Compiler\11.1\051\Bin\ia32\ifort.exe -72 -w90
-w95 -KPIC -cm -O3 -unroll

-Ic:\fft\bin\python-2.6.4\lib\site-packages\numpy\core\include -c -c
scipy\fftpack\src\dfftpack\dcosqb.f -o

build\temp.win32-2.6\scipy\fftpack\src\dfftpack\dcosqb.o

is not right (the "-o" switch at least) and should look like:


C:\Program Files\Intel\Compiler\11.1\051\Bin\ia32\ifort.exe -72 -w90
-w95 -KPIC -cm -O3 -unroll

-Ic:\fft\bin\python-2.6.4\lib\site-packages\numpy\core\include -c

scipy\fftpack\src\dfftpack\dcosqb.f

/Fobuild\temp.win32-2.6\scipy\fftpack\src\dfftpack\dcosqb.o

Has anyone used the intel visual fortran (11.1) compiler to build scipy
(or any fortran files using distutils) ?

Thanks for your help,
Eloi


--


Eloi Gaudry

Free Field Technologies
Axis Park Louvain-la-Neuve
Rue Emile Francqui, 1
B-1435 Mont-Saint Guibert
BELGIUM

Company Phone: +32 10 487 959
Company Fax: +32 10 454 626

David Cournapeau

unread,
Dec 15, 2009, 5:37:45 AM12/15/09
to SciPy Users List
HI Eloi,

On Tue, Dec 15, 2009 at 3:37 PM, Eloi Gaudry <e...@fft.be> wrote:
> Hi,
>
> I think that the numpy/distutils/intel.py module is not up-to-date as it
> doesn't support Intel Visual Fortran for 64-bits apps (windows).

If you have IFort and the MKL, I advise you to use numscons to build
and install numpy and scipy on windows 64. This is much easier, and it
should work today (if it doesn't, I will fix the problems, whereas I
have no interest in fixing distutils at this point).

You only need to first install numscons (pure python, so just do
python setup.py install):

http://github.com/cournape/numscons.git

Then, you build numpy and scipy as follows (inside their respective
source tree):

python setupscons.py scons -b --fcompiler=ifort --compiler=msvc install

- setupscons.py instead of setup.py tells distutils to use numscons
to build extensions
- -b tells numscons to bypass distutils compiler detection, so that
numscons does its own detection internally
- in bypass mode, you need to say which C and Fortran compiler you want to use.

To tell numscons where to look for the MKL, you need to create a
numscons.cfg file inside the source trees, something like:

[mkl]
include_dirs = C:¥Program¥ Files¥ (x86)¥Intel¥compilers¥....¥MKL¥include
library_dirs = C:¥Prorgram¥ Files¥ (x86)¥Intel......¥MKL¥ia32¥lib

Both numpy and scipy test suites pass almost every test on windows 64 bits.

cheers,

David

Eloi Gaudry

unread,
Dec 15, 2009, 6:53:37 AM12/15/09
to SciPy Users List
Hi David,

thanks for this advise.
Can I use numscons to build scipy-0.7.1 and numpy-1.3.0 or should I use
their current svn version ?

Another question, using numscons to build scipy implicitly means that
numpy should have been built using numscons too (cf. compilers options
that might be different, etc.) ?

Eloi

--


Eloi Gaudry

Free Field Technologies
Axis Park Louvain-la-Neuve
Rue Emile Francqui, 1
B-1435 Mont-Saint Guibert
BELGIUM

Company Phone: +32 10 487 959
Company Fax: +32 10 454 626

_______________________________________________

David Cournapeau

unread,
Dec 15, 2009, 7:14:36 AM12/15/09
to SciPy Users List
On Tue, Dec 15, 2009 at 5:23 PM, Eloi Gaudry <e...@fft.be> wrote:

> thanks for this advise.
> Can I use numscons to build scipy-0.7.1 and numpy-1.3.0 or should I use
> their current svn version ?

You should use the svn version. Numpy 1.3.0 can be built under VS 2008
64 bits, but scipy 0.7.1 cannot (because of fortran, mostly), and svn
scipy requires svn numpy. For numpy, you should use the 1.4.x branch,
this one is the stable one for now.

>
> Another question, using numscons to build scipy implicitly means that
> numpy should have been built using numscons too (cf. compilers options
> that might be different, etc.) ?

It is not strictly required, but that's strongly recommended, in part
for the reasons you mentioned. There is no advantage in using
distutils to build compared to numscons if your toolchain is supported
that I can see anyway,

Eloi Gaudry

unread,
Dec 16, 2009, 3:21:33 AM12/16/09
to SciPy Users List
David Cournapeau wrote:
> On Tue, Dec 15, 2009 at 5:23 PM, Eloi Gaudry <e...@fft.be> wrote
>> thanks for this advise.
>> Can I use numscons to build scipy-0.7.1 and numpy-1.3.0 or should I use
>> their current svn version ?
> You should use the svn version. Numpy 1.3.0 can be built under VS 2008
> 64 bits, but scipy 0.7.1 cannot (because of fortran, mostly), and svn
> scipy requires svn numpy. For numpy, you should use the 1.4.x branch,
> this one is the stable one for now.
I cannot afford to use the current svn (i.e. non-release) versions, but
I will switch to numscons when the next releases will be made. An
alternative to distutils is a good thing, especially if it's easily
maintainable and configurable (i.e. adding support for newer compilers
or changing whatever compilers flags, macro, etc. should be something easy).

>> Another question, using numscons to build scipy implicitly means that
>> numpy should have been built using numscons too (cf. compilers options
>> that might be different, etc.) ?
> It is not strictly required, but that's strongly recommended, in part
> for the reasons you mentioned. There is no advantage in using
> distutils to build compared to numscons if your toolchain is supported
> that I can see anyway,
Does this means that all future versions of numpy and scipy will be
built (default behavior) using numscons ?

>
> cheers,
>
> David
> _______________________________________________
> SciPy-User mailing list
> SciPy...@scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-user
Thanks for your help David,
Eloi

David Cournapeau

unread,
Dec 16, 2009, 6:23:25 AM12/16/09
to SciPy Users List
On Wed, Dec 16, 2009 at 1:51 PM, Eloi Gaudry <e...@fft.be> wrote:

> An
> alternative to distutils is a good thing, especially if it's easily
> maintainable and configurable (i.e. adding support for newer compilers
> or changing whatever compilers flags, macro, etc. should be something easy).

Yes, indeed. Numscons was a first tentative in that direction.

> Does this means that all future versions of numpy and scipy will be
> built (default behavior) using numscons ?

I myself use numscons pretty much exclusively, but I still use
distutils to build the official binaries. I think numscons works well
for developers, but it often fails for end-users who want to build,
and this cannot be easily fixed if at all while being used within
distutils (numscons still depends on distutils for packaging, etc...).

Currently, I am working on a full, written from scratch packaging
solution. I have officially announced it at Scipy India:

git://github.com/cournape/toydist.git

The main idea is to have a declarative file which can fully describe
all that's needed for most packages, and have a stable and specified
interface with real build systems like make/scons/waf for the others.

Eloi Gaudry

unread,
Dec 16, 2009, 2:29:46 PM12/16/09
to scipy...@scipy.org
Thanks for this information David.

I just finished building scipy on both our 32-bit & 64-bit windows
platforms, using disutils (patched python and numpy modules). I'll
(hopefully) switch to scons for building the next official releases.

Eloi

Arthur M. Greene

unread,
Dec 16, 2009, 3:21:12 PM12/16/09
to SciPy Users List
This can be accomplished in a loop, but I'm hoping there is a more
efficient way: Starting with two 1-D arrays indexed the same, e.g.,

x0,x1,x2... y0,y1,y2...

the x's are first binned normally, i.e., a set of edges is defined and
each x that falls in a particular bin generates a count. (This can be
accomplished using histogram.) What I then need to do though, is find
the average value of the corresponding y's. Example:

x = (1,4,7), y = (200,100,1000), edges = (0,5,10)

Then

counts = (2,1), ydata = (150,1000)

Size of x or y is only about 500, but the procedure needs to be repeated
many times and looping makes the execution quite slow. I've been looking
at np.digitize, but haven't quite figured out how this (or some other
call I don't know) might be used to "vectorize" the process. Suggestions
appreciated!

Thx,

Arthur


*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*
Arthur M. Greene
The International Research Institute for Climate and Society
Monell Building, 61 Route 9W, Palisades, NY 10964-8000 USA
amg at iri . columbia . edu
*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*

amg.vcf

Keith Goodman

unread,
Dec 16, 2009, 3:52:52 PM12/16/09
to SciPy Users List
On Wed, Dec 16, 2009 at 12:21 PM, Arthur M. Greene <a...@iri.columbia.edu> wrote:
> This can be accomplished in a loop, but I'm hoping there is a more efficient
> way: Starting with two 1-D arrays indexed the same, e.g.,
>
> x0,x1,x2... y0,y1,y2...
>
> the x's are first binned normally, i.e., a set of edges is defined and each
> x that falls in a particular bin generates a count. (This can be
> accomplished using histogram.) What I then need to do though, is find the
> average value of the corresponding y's. Example:
>
> x = (1,4,7), y = (200,100,1000), edges = (0,5,10)
>
> Then
>
> counts = (2,1), ydata = (150,1000)
>
> Size of x or y is only about 500, but the procedure needs to be repeated
> many times and looping makes the execution quite slow. I've been looking at
> np.digitize, but haven't quite figured out how this (or some other call I
> don't know) might be used to "vectorize" the process. Suggestions
> appreciated!

If you don't have many edges then looping might be faster than
something like this:

>> x = (1,4,7)
>> y = (200,100,1000)
>> edges = (0,5,10)

>> idx = np.digitize(x, edges)
>> idx
array([1, 1, 2])

>> jdx = np.equal.outer(idx, np.unique1d(idx))
>> jdx

array([[ True, False],
[ True, False],
[False, True]], dtype=bool)

Now, how to use jdx to find the means....

Alan G Isaac

unread,
Dec 16, 2009, 3:59:22 PM12/16/09
to SciPy Users List
On 12/16/2009 3:21 PM, Arthur M. Greene wrote:
> x = (1,4,7), y = (200,100,1000), edges = (0,5,10)
> counts = (2,1), ydata = (150,1000)


>>> gety = np.where(np.equal.outer(np.arange(1,len(edges)),np.digitize(x,edges)),y,0)
>>> counts = (gety>0).sum(axis=1)
>>> gety.sum(axis=1) / counts
array([ 150, 1000])

fwiw,
Alan Isaac

Arthur M. Greene

unread,
Dec 16, 2009, 4:53:18 PM12/16/09
to SciPy Users List, ais...@american.edu, kwgo...@gmail.com
Alan G Isaac wrote:
> On 12/16/2009 3:21 PM, Arthur M. Greene wrote:
>> x = (1,4,7), y = (200,100,1000), edges = (0,5,10)
>> counts = (2,1), ydata = (150,1000)
>
>
>>>> gety =
>>>>np.where(np.equal.outer(np.arange(1,len(edges)),np.digitize(x,edges)),y,0)
>>>> counts = (gety>0).sum(axis=1)
>>>> gety.sum(axis=1) / counts
> array([ 150, 1000])
>

The above looks like it will work (took a minute to figure out what
"outer" is doing), with one modification: y can be of either sign, so
counts becomes (gety!=0).sum(axis=1). y could also conceivably be
exactly zero, in which case the count would be missed even with the
above modification. But this is not too likely -- the raw values are
provided to many decimal places.

Thanks for the quick and helpful replies!

Arthur


*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*^*~*
Arthur M. Greene
The International Research Institute for Climate and Society

The Earth Institute, Columbia University

amg.vcf
Reply all
Reply to author
Forward
0 new messages