omrpc-register - operations about OmniRPC's registry.
omnrpc-register [-path reg_path] [-show|-help|-clear|[-register|-remove] rex_prog]
Adds registry of remote executable programs, and removes them from the registry. Shows the current registry.
omrpc-cc - Compile driver for OmniRPC program.
omrpc-cc [options] [file.idl][file.c ...]
The compile driver for the OmniRPC program. Links to necessary OmniRPC library. And, if the IDL file is in the arguments, creates remote executable program which corresponds to it.
When you create client program, the command is used like a C compiler. For example:
omrpc-cc -o foo foo.c goo.oLike a C compiler, this compiles foo.c, and links to goo.o, then the executable file foo is created. During this time, this command automatically sets the library and include file, which are necessary for OmniRPC. Additionally, if "-o" is not specified, like a C compiler, the object file is "a.out."
If the IDL file has an ".idl" extension in the argument file, this command generates the OmniRPC remote executable program from this file. This program name takes on the extension ".rex", for instance,
omrpc-cc bar.idl goo.oIn this case, bar.rex is generated from bar.idl, and goo.o is the library linked to a remote execution program.
omrpc-gen - A program to generate OmniRPC's stub.
omrpc-gen [file.idl][file.c]
Generates the stub program file.c (in C language) from the IDL file file.idl. If the IDL file is omitted, the input is from STDIN. If the stub program argument is omitted, the output is STDOUT. Usually IDL files uses the file extension ".idl". The source file of stub program use the extension ".rex.c". The remote executable program which is compiled from the stub program, use the extension ".rex".
This program usually call from the OmniRPC's compile driver, so you can use it directly. If you compile the stub source program directly, you should specify the include directory, which is below the install directory, as the include path. And when you create the remote executable program, you should link the library for the stub (libomrpc_stub.a and libomrpc_io.a). If you install OmniRPC at the INSTALL_DIR, you should compile in the way shown below.
cc -o foo.rex -IINSTALL_DIR/include foo.rex.c ... -LINSTALL_DIR/lib -lomrpc_stub.a -lomrpc_io