Hi, We have some fortran code that we'd like to wrap using f2py. The code consists of a library that we compile into an .so file, and a file that wraps that library, which is then wrapped by f2py to provide a clean interface to the library. The process thus includes two steps: 1.- Use a makefile to compile the library 2.- Use f2py to create the python bindings from a fortran file, and link dynamically to the library created in the previous step.
Now, I don't see why just a call to f2py shouldn't suffice (we don't really need to have an .so lying around, and it implies that we have to set eg $LD_LIBRARY_PATH to search for it). I thought about using a pyf file for this, and use the only :: option: $ f2py -h my_model.pyf -m my_model my_wrapper.f90 only: func1 func2 func3 : all_my_other_files.f even_more_files.f90 $ f2py -c -m my_model --f90flags="-fdefault-real-8 -O3 -march=native -m32" --f90exec=/usr/bin/gfortran --f77exec=/usr/bin/gfortran --opt=-O3 my_model.pyf This however, doesn't seem to work, with python complaining about missing things. If I put all my *.f and *f90 files after the my_model.pyf (which doesn't seem to have them in the file), I get undefined symbol errors when importing the .so in python. Additionally, it would be great to have this compilation in a distutils-friendly package, but how do you specify all these compiler flags? Thanks! Jose
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion