Client program in Fortran

And now, change the client program main.f to call the remote executable program with OmniRPC.

      double precision a(10),b(10),r
      call OMINRPC_INIT
      do i = 1,10
         a(i) = i
         b(i) = i+10
      end do
      call OMNIRPC_CALL("f_innerprod*",10,a,b,r)
      write(*,*) 'result=',r
      call OMNIRPC_FINALIZE
      end

This program initializes with OMNIRPC_INIT and calls by OMNIRPC_CALL. Please keep in mind that the entry name which is specified by OMNIRPC_CALL should have "*" at the end of the name which is defined on the interface. You should add "*" to the end of strings which are obtained with OmniRPC, such as the module name and host name. OmniRPC considers "*" to be a string terminator in OmniRPC's Fortran API.

Using omrpc-fc to compile this file.

%  omrpc-fc main.f