<div dir="ltr">Hello all,<div><br></div><div>I have been trying to compile a relatively simple pair of Fortran files, one referencing a subroutine from another file (mainmodule.f90 references othermodule.f90).  I have been able to compile them using a Fortran compiler, but receive a NotImplementedError when using f2py.</div><div><br></div><div>Steps I use for f2py:</div><div><br></div><div>$gfortran -shared -o othermodule.so othermodule.f90 -fPIC</div><div><br></div><div>$f2py -c -l/path/othermodule -m mainmodule mainmodule.f90</div><div><br></div><div>I am running this on linux and wasn't sure how to correct the error.</div><div><br></div><div><div>othermodule.f90</div><div><br></div><div>  module moderator</div><div><br></div><div>    implicit none</div><div>    integer*1 :: i</div><div>    integer*8 :: fact,len  </div><div>    real*8,dimension(:),allocatable :: ex</div><div><br></div><div>    contains</div><div>    </div><div>      subroutine submarine(ii,ff,exex)</div><div>      </div><div>        implicit none</div><div>        integer*1 :: ii</div><div>        integer*8 :: ff</div><div>        real*8 :: exex</div><div>      </div><div>        exex=exp(real(ii))/ff</div><div>      </div><div>      end subroutine submarine</div><div><br></div><div>  end module moderator</div></div><div><br></div><div><br></div><div>mainmodule.f90</div><div><br></div><div><div>  program mains</div><div><br></div><div>    use moderator</div><div><br></div><div>    implicit none</div><div><br></div><div>    len=10</div><div>    allocate(ex(len))</div><div>    fact=1</div><div>    do i=1,len</div><div>       fact=fact*i</div><div>       call submarine(i,fact,ex(i))</div><div>       if (i==1) then</div><div>          print*,"here's your ",i,"st number: ",ex(i)</div><div>       elseif (i==2) then</div><div>          print*,"here's your ",i,"nd number: ",ex(i)</div><div>       elseif (i==3) then</div><div>          print*,"here's your ",i,"rd number: ",ex(i)</div><div>       else</div><div>          print*,"here's your ",i,"th number: ",ex(i)</div><div>       endif</div><div>    enddo</div><div>    deallocate(ex)</div><div><br></div><div>  end program</div></div><div><br></div><div><br></div><div>Thanks for the help,</div><div>Andy</div></div>