[Numpy-discussion] Which fortran compilers should numpy/scipy support ?
Sun Jan 27 06:04:02 CST 2008
Pearu Peterson wrote:
> On Sun, January 27, 2008 12:12 pm, David Cournapeau wrote:
>> For fortran support in numscons, I would like to know which fortran
>> compiler we support ? For now, I successfully used the following:
>> - g77 on linux.
>> - mingw g77 on windows.
>> - gfortran on linux and mac os X.
>> - intel compiler on linux.
>> - sun compiler on linux and solaris.
>> I suspect most unix compilers to work ok wo explicit support (the
>> annoying ones are really windows ones), but I would prefer having a list
>> of compilers explicitely supported for my unit tests.
> All compilers defined in numpy/distutils/fcompiler used to work
> at some point but it is difficult to maintain them when one does
> not have access to all of these compilers and one must relay on
> users bug reports.
Indeed. However, I believe numscons has an advantage here, because most
(but not all) informations for fortran compilers are obtained at
runtime. Testing that compiling works is hard, but testing that the
runtime parser works is easy and testable on every platform. Since my
parser is modeled on autoconf AC_F77_LDFLAGS and co, it should work with
many compilers (except windows, obviously).
> In addition to the above list, the absoft compiler has been quite
> popular, both on linux and windows. The mips compiler has been
> used a lot and it used to work fine. The compaq compiler is used
> by windows users. I haven't seen hpux, vast, lahey, pg compilers used
> much but all except hpux (iirc) have been worked fine.
> nag compiler should be easy to support.
> I think we should support as much compilers as possible provided
> that any of the numpy/scipy developers have access to these and
> are willing to run the tests now and then.
If you have a few minutes to spend, and access to compilers not cited in
my list, would you mind using some of the small tools I hacked to get
informations on fortran compilers ? For example, for g77:
- python ac_f77_ldflags.py g77
- python f77link_output.py g77
should give all the necessary informations to link g77 object code and
object code compiled by a C compiler. The tools are in
numscons/tests/fortran. The first one runs autoconf and get the value
from AC_F77_LDFLAGS for a given F77 compiler, whereas the other one just
compile an empty fortran program, to get the verbose output of the link
step. They should work on any platform (of course, the ac_f77_ldflags
won't work in a standard windows environment, since autoconf needs a
basic unix environment).
The archive is there:
More information about the Numpy-discussion