build_ext failure with PathScale Fortran compiler (Trac #886) #1413

Closed
scipy-gitbot opened this Issue Apr 25, 2013 · 7 comments

Projects

None yet

1 participant

@scipy-gitbot

Original ticket http://projects.scipy.org/scipy/ticket/886 on 2009-03-10 by trac user avi, assigned to @cournape.

When building scipy with a new compiler (pathscale) added to the numpydistutilsfcompiler list, the build log shows that the build process picks up the compiler for certain parts of the build..

customize PathScaleFCompiler

customize PathScaleFCompiler using build_clib

building 'dfftpack' library
compiling Fortran sources
Fortran f77 compiler: /opt/pathscale/ice9_native_3.2n_B_sicortex/bin/pathf95 -fixedform -O3

Fortran f90 compiler: /opt/pathscale/ice9_native_3.2n_B_sicortex/bin/pathf95 -O3

Fortran fix compiler: /opt/pathscale/ice9_native_3.2n_B_sicortex/bin/pathf95 -fixedform -O3
creating build/temp.linux-mips64-2.4
creating build/temp.linux-mips64-2.4/scipy
creating build/temp.linux-mips64-2.4/scipy/fftpack
creating build/temp.linux-mips64-2.4/scipy/fftpack/src
creating build/temp.linux-mips64-2.4/scipy/fftpack/src/dfftpack
compile options: '-c'
pathf95:f77: scipy/fftpack/src/dfftpack/dcosqi.f
pathf95:f77: scipy/fftpack/src/dfftpack/dcosqf.f
pathf95:f77: scipy/fftpack/src/dfftpack/zfftf.f
:

and the build continues with success on picking up and building with the pathscale compiler on other pieces that need the fortran compiler until..

:
running build_ext
customize UnixCCompiler
customize UnixCCompiler using build_ext

resetting extension 'scipy.integrate._odepack' language from 'c' to 'f77'.
resetting extension 'scipy.integrate.vode' language from 'c' to 'f77'.
resetting extension 'scipy.lib.blas.fblas' language from 'c' to 'f77'.
resetting extension 'scipy.odr.__odrpack' language from 'c' to 'f77'.

extending extension 'scipy.sparse.linalg.dsolve._zsuperlu' defined_macros with [('USE_VENDOR_BLAS', 1)]
extending extension 'scipy.sparse.linalg.dsolve._dsuperlu' defined_macros with [('USE_VENDOR_BLAS', 1)]
extending extension 'scipy.sparse.linalg.dsolve._csuperlu' defined_macros with [('USE_VENDOR_BLAS', 1)]
extending extension 'scipy.sparse.linalg.dsolve._ssuperlu' defined_macros with [('USE_VENDOR_BLAS', 1)]
customize UnixCCompiler
customize UnixCCompiler using build_ext

customize PathScaleFCompiler
warning: build_ext: f77_compiler=pathscale is not available.
:

scgcc -shared build/temp.linux-mips64-2.4/scipy/cluster/src/hierarchy_wrap.o build/temp.linux-mips64-2.4/scipy/cluster/src/h
ierarchy.o -Lbuild/temp.linux-mips64-2.4 -o build/lib.linux-mips64-2.4/scipy/cluster/_hierarchy_wrap.so
building 'scipy.fftpack._fftpack' extension
warning: build_ext: extension 'scipy.fftpack._fftpack' has Fortran libraries but no Fortran linker found, using default link
er
compiling C sources
:

and ultimately failure because of this reason..

scgcc -shared build/temp.linux-mips64-2.4/scipy/interpolate/src/_fitpackmodule.o -Lbuild/temp.linux-mips64-2.4 -lfitpack -o
build/lib.linux-mips64-2.4/scipy/interpolate/_fitpack.so
building 'scipy.interpolate.dfitpack' extension
error: extension 'scipy.interpolate.dfitpack' has Fortran sources but no Fortran compiler found

Any suggestions on why build_ext is failing on picking up the fortran compiler or any work-arounds for this?

I am attaching the pathscale fortran script that is used.

Thanks

Avi

@scipy-gitbot

Attachment added by trac user avi on 2009-03-10: pathscale2.py

@scipy-gitbot

trac user avi wrote on 2009-03-11

Browsing the web, I noticed an older ticket on a similar sort of warning and issue: http://trac.macports.org/ticket/13776

The solution to this seems to be that the compiler issuing the warning in this case -- g95 -- was not supported on Mac OS X platform.

Could it be that in my case, pathscale is not a compiler that is supported in the linux platform is the reason I am getting the warning/error?

Any workarounds to this?

@scipy-gitbot

@rgommers wrote on 2010-07-17

@scipy-gitbot

Milestone changed to 0.9.0 by @rgommers on 2010-07-17

@scipy-gitbot

Title changed from build_ext failure to build_ext failure with PathScale Fortran compiler by @rgommers on 2010-07-17

@scipy-gitbot

@rgommers wrote on 2010-11-28

Similar error in gh-1857.

@scipy-gitbot

@rgommers wrote on 2010-11-30

The solution was given in http://projects.scipy.org/numpy/ticket/1043

"Avi, your pathscale configuration fails as the version pattern is wrongly configured returning None as the compiler version.

The version_pattern should read: "

version_pattern =  r'PathScale\(TM\) Compiler Suite: Version (?P<version>[\d.]+)'

etc.... check the numpy ticket for patches and details.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment