Re: Deferred mode linking

From: Tim Smith <tssmith_at_netcom.com>
Date: Wed, 21 Apr 1993 02:21:35 GMT
Message-ID: <tssmithC5tAK0.9Br_at_netcom.com>


In article <1993Apr19.190613.11224_at_exu.ericsson.se> ebuhob_at_ebu.ericsson.se writes:
>The Programmer's Guide to The OCI, version 7.0, describes something called
>"deferred mode linking". In short, if an application is linked this way
>the number of actual server calls are reduced quite a bit and this should
>improve application performance. Sounds neat :-)
>
>The OCI guide refers to "the ORACLE installation or user's guide
>for you system" for information about *how* to link the application this
>way. But I can't find this information in any of the SunOS 4.1.x/UNIX manuals
>(Installation & Configuration, ORACLE Tools for UNIX Administrator's Guide an
>ORACLE7 Server for UNIX Administrator's Guide) or the README files.

This *should* be documented in one of the ORACLE for UNIX installation and user's guides, but apparently is not. I'll file a bug.

Anyhow, the answer is to be found in the makefile $ORACLE_HOME/rdbms/lib/oracle.mk, which you use to make the sample programs, as well as other interesting things (like ORACLE). The default mode in that makefile is deferred mode, but when you're first developing an app you'd normally want to link in nondeferred mode, so that you can catch errors after each call.

Using this makefile, you turn deferred mode off like so:

make -f oracle.mk NONDEFER=true <filename>

Have a look at it to see how to it for your own custom makefiles.

Also, remember that this linktime option does not control deferring the oparse() call. To do that you have set the defflg parameter in oparse()'s arg list to TRUE.

--Tim (tssmith_at_oracle.com) Received on Wed Apr 21 1993 - 04:21:35 CEST

Original text of this message