[Numpy-discussion] compile fortran from python
Pearu Peterson
pearu.peterson at gmail.com
Mon Oct 11 02:43:26 EDT 2010
Hi,
You can create a setup.py file containing
def configuration(parent_package='',top_path=None):
from numpy.distutils.misc_util import Configuration
config = Configuration(None,parent_package,top_path)
config.add_library('flib', sources = [test.f95])
config.add_extension('ctest', sources = ['ctest.c'],
libraries=['flib'])
return config
if __name__ == "__main__":
from numpy.distutils.core import setup
setup(configuration=configuration)
#eof
Running
python setup.py config_fc --fcompiler=gnu95 build
will build a Fortran library flib.a and link it to
an extension module ctest.so. Use build_ext --inplace
if ctest.so should end up in current working directory.
Is that what you wanted to achieve?
HTH,
Pearu
On 10/09/2010 02:18 PM, Ioan Ferencik wrote:
> I would like to compile some Fortran code using python, build a
> shared library, and link to it using python. But I get a message
> saying the compiler does not recognise the extension of my file.
>
> this is my command:
>
> gcc -fPIC -c -shared -fno-underscoring test.f95 -o ./lib/libctest.so.1.0
>
> what is the easiest method to achieve this?
> I suspect I could create a custom extension and customise the
> unixccompiler object or could I just use the compiler object defined
> by f2py(fcompiler).
>
> Cheers
>
>
> Ioan Ferencik
> PhD student
> Aalto University
> School of Science and Technology
> Faculty Of Civil and Env. Engineering
> Lahti Center
> Tel: +358505122707
>
>
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
More information about the NumPy-Discussion
mailing list